df <-read.csv("dota2.csv")
tail(df)
## ability_name radiant_win item_id duration first_blood_time
## 245 life_stealer_infest TRUE 34 1838 82
## 246 life_stealer_consume FALSE 46 1764 80
## 247 dark_seer_vacuum TRUE 46 3827 6
## 248 dark_seer_ion_shell TRUE 46 2106 21
## 249 dark_seer_surge TRUE 2 3145 144
## 250 Invoker_sun_strike FALSE 50 3122 123
Let’s see with simple regression, that if the item_id can predict the first_blood_time.
linear <- lm(first_blood_time ~ item_id, df)
linear
##
## Call:
## lm(formula = first_blood_time ~ item_id, data = df)
##
## Coefficients:
## (Intercept) item_id
## 89.73149 -0.05314
By using R, I can show the prediction by showing the duration= -0.05314 ∗item_id + 89.73149 .
itemId_to_FirstBlood <- function(itemID){
first_Blood <- -0.05314 * itemID + 89.73149
return(first_Blood)
}
itemId_to_FirstBlood(100)
## [1] 84.41749
By testing the function above we can see the 100 item_id we predict about 84 first_blood_time
Or we could just use the predict() function with 100 data for duration to predict the data.
a <- data.frame(item_id = c(100))
predict(linear,a)
## 1
## 84.41794
We got some accuracy. let’s find sum of squares error which is the features of linear regression
sum((predict(linear,df)
-df$first_blood_time)^2)
## [1] 1610470
Linear regression attempts to minimize the value.
This is the residual standard error.
sqrt(sum((predict(linear,df)-df$first_blood_time)^2)/178)
## [1] 95.11878
By calling summary we can see the numbers as below:
summary(linear)
##
## Call:
## lm(formula = first_blood_time ~ item_id, data = df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -89.57 -73.26 -13.00 47.39 232.01
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 89.73149 7.68963 11.669 <2e-16 ***
## item_id -0.05314 0.10241 -0.519 0.604
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 80.58 on 248 degrees of freedom
## Multiple R-squared: 0.001084, Adjusted R-squared: -0.002944
## F-statistic: 0.2692 on 1 and 248 DF, p-value: 0.6043
Looking at the summary the data which i have is not suited for the linear regression. I also tried other variables but this one was best another other variation. We can see that the Adjusted R-square is in negative -0.002944. Which is bad to do the linear regression but anyway I have to do this to see what will the result look like.
From the table above it is showing that item_id is identified as significant but the intercept was not.
Let’s plot the above data into find the visual result of our values.
plot(linear)
The QQ Plot is barely on the line and we can clearly see that there are way too many outlines and other plot is scattered as well. Which I think is the reason that it is messing with the accuracy of the regression.
Let’s make the intercept be zero and see the result as it was not that important to beging with.
linearNoIntercept <- lm(first_blood_time ~ 0 +item_id, df)
summary(linearNoIntercept)
##
## Call:
## lm(formula = first_blood_time ~ 0 + item_id, data = df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -179.82 -22.72 34.90 92.20 309.22
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## item_id 0.84174 0.08431 9.984 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 100.1 on 249 degrees of freedom
## Multiple R-squared: 0.2859, Adjusted R-squared: 0.283
## F-statistic: 99.67 on 1 and 249 DF, p-value: < 2.2e-16
We can see the slight increase in some of the p-values and see the Adjusted R-squared increase in value.
If we add duration to predict first_blood_time how will it affect our result.
multiple <- lm(first_blood_time ~ item_id + duration, df)
summary(multiple)
##
## Call:
## lm(formula = first_blood_time ~ item_id + duration, data = df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -90.25 -73.17 -13.41 48.07 231.50
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 93.211975 21.237505 4.389 1.69e-05 ***
## item_id -0.053509 0.102635 -0.521 0.603
## duration -0.001346 0.007656 -0.176 0.861
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 80.74 on 247 degrees of freedom
## Multiple R-squared: 0.001209, Adjusted R-squared: -0.006878
## F-statistic: 0.1495 on 2 and 247 DF, p-value: 0.8612
I get negative duration of -0.001346 and the p-value is not significant so we should probably not keep it.
multiple2 <- lm(first_blood_time ~ item_id:radiant_win ,df)
summary(multiple2)
##
## Call:
## lm(formula = first_blood_time ~ item_id:radiant_win, data = df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -103.67 -73.18 -11.62 49.77 230.48
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 89.42204 7.66131 11.672 <2e-16 ***
## item_id:radiant_winFALSE 0.07874 0.12749 0.618 0.537
## item_id:radiant_winTRUE -0.15566 0.11807 -1.318 0.189
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 80.27 on 247 degrees of freedom
## Multiple R-squared: 0.01297, Adjusted R-squared: 0.004976
## F-statistic: 1.623 on 2 and 247 DF, p-value: 0.1995
This interaction has different coefficient for item_id for radiant_win which was TRUE or FALSE. We can see that the coefficient for FLASE is more significant than TRUE.
multiple3 <- lm(first_blood_time ~ item_id * radiant_win ,df)
summary(multiple3)
##
## Call:
## lm(formula = first_blood_time ~ item_id * radiant_win, data = df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -99.19 -70.20 -17.45 52.48 234.77
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 99.61372 11.12638 8.953 <2e-16 ***
## item_id -0.02523 0.15167 -0.166 0.868
## radiant_winTRUE -19.33896 15.32665 -1.262 0.208
## item_id:radiant_winTRUE -0.04092 0.20480 -0.200 0.842
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 80.17 on 246 degrees of freedom
## Multiple R-squared: 0.01932, Adjusted R-squared: 0.007356
## F-statistic: 1.615 on 3 and 246 DF, p-value: 0.1864
Looking at this interaction the coefficients for all of the values are pretty much insignificant with all of the values being negative values.
Let’s run a regression predicting first_blood_time on all of the data so see what will it show.
multiple3 <- lm(first_blood_time ~. ,df)
summary(multiple3)
##
## Call:
## lm(formula = first_blood_time ~ ., data = df)
##
## Residuals:
## ALL 250 residuals are 0: no residual degrees of freedom!
##
## Coefficients: (3 not defined because of singularities)
## Estimate Std. Error t value
## (Intercept) 1.000e+00 NaN NaN
## ability_nameantimage_blink 5.700e+01 NaN NaN
## ability_nameantimage_mana_break 3.900e+01 NaN NaN
## ability_nameantimage_mana_void 3.000e+00 NaN NaN
## ability_nameantimage_spell_shield 1.120e+02 NaN NaN
## ability_nameattribute_bonus 1.890e+02 NaN NaN
## ability_nameaxe_battle_hunger 3.000e+00 NaN NaN
## ability_nameaxe_berserkers_call 2.540e+02 NaN NaN
## ability_nameaxe_counter_helix 8.400e+01 NaN NaN
## ability_nameaxe_culling_blade 1.420e+02 NaN NaN
## ability_namebane_brain_sap 7.500e+01 NaN NaN
## ability_namebane_enfeeble 2.000e+00 NaN NaN
## ability_namebane_fiends_grip 1.190e+02 NaN NaN
## ability_namebane_nightmare 2.600e+01 NaN NaN
## ability_namebeastmaster_boar_poison 4.300e+01 NaN NaN
## ability_namebeastmaster_call_of_the_wild 4.200e+01 NaN NaN
## ability_namebeastmaster_hawk_invisibility 1.080e+02 NaN NaN
## ability_namebeastmaster_inner_beast 2.860e+02 NaN NaN
## ability_namebeastmaster_primal_roar 2.300e+02 NaN NaN
## ability_namebeastmaster_wild_axes 1.690e+02 NaN NaN
## ability_namebloodseeker_blood_bath 2.510e+02 NaN NaN
## ability_namebloodseeker_bloodrage 1.000e+02 NaN NaN
## ability_namebloodseeker_rupture 1.670e+02 NaN NaN
## ability_namebloodseeker_thirst 3.000e+00 NaN NaN
## ability_namecourier_burst 1.310e+02 NaN NaN
## ability_namecourier_return_stash_items -1.000e+00 NaN NaN
## ability_namecourier_return_to_base 4.600e+01 NaN NaN
## ability_namecourier_shield 9.500e+01 NaN NaN
## ability_namecourier_take_stash_items -1.000e+00 NaN NaN
## ability_namecourier_transfer_items -1.000e+00 NaN NaN
## ability_namecrystal_maiden_brilliance_aura 5.000e+00 NaN NaN
## ability_namecrystal_maiden_crystal_nova 1.990e+02 NaN NaN
## ability_namecrystal_maiden_freezing_field 1.570e+02 NaN NaN
## ability_namecrystal_maiden_frostbite 1.470e+02 NaN NaN
## ability_namedark_seer_ion_shell 2.000e+01 NaN NaN
## ability_namedark_seer_surge 1.430e+02 NaN NaN
## ability_namedark_seer_vacuum 5.000e+00 NaN NaN
## ability_namedazzle_poison_touch 3.000e+00 NaN NaN
## ability_namedazzle_shadow_wave -1.000e+00 NaN NaN
## ability_namedazzle_shallow_grave 8.000e+00 NaN NaN
## ability_namedazzle_weave 1.050e+02 NaN NaN
## ability_namedeath_prophet_carrion_swarm 7.500e+01 NaN NaN
## ability_namedeath_prophet_exorcism 1.880e+02 NaN NaN
## ability_namedeath_prophet_silence 1.010e+02 NaN NaN
## ability_namedeath_prophet_witchcraft 1.360e+02 NaN NaN
## ability_namedefault_attack 2.200e+02 NaN NaN
## ability_namedragon_knight_breathe_fire 1.580e+02 NaN NaN
## ability_namedragon_knight_dragon_blood 1.500e+01 NaN NaN
## ability_namedragon_knight_dragon_tail 2.790e+02 NaN NaN
## ability_namedragon_knight_elder_dragon_form 7.400e+01 NaN NaN
## ability_namedragon_knight_frost_breath 5.000e+00 NaN NaN
## ability_namedrow_ranger_frost_arrows 1.110e+02 NaN NaN
## ability_namedrow_ranger_marksmanship 3.000e+00 NaN NaN
## ability_namedrow_ranger_silence 2.070e+02 NaN NaN
## ability_namedrow_ranger_trueshot 4.800e+01 NaN NaN
## ability_nameearthshaker_aftershock 4.000e+00 NaN NaN
## ability_nameearthshaker_echo_slam 1.070e+02 NaN NaN
## ability_nameearthshaker_enchant_totem 7.800e+01 NaN NaN
## ability_nameearthshaker_fissure 3.000e+00 NaN NaN
## ability_nameenigma_black_hole 5.300e+01 NaN NaN
## ability_nameenigma_demonic_conversion 1.200e+01 NaN NaN
## ability_nameenigma_malefice 6.000e+01 NaN NaN
## ability_nameenigma_midnight_pulse 1.300e+01 NaN NaN
## ability_namefaceless_void_backtrack 1.160e+02 NaN NaN
## ability_namefaceless_void_chronosphere 3.300e+01 NaN NaN
## ability_namefaceless_void_time_lock 1.910e+02 NaN NaN
## ability_namefaceless_void_time_walk 7.300e+01 NaN NaN
## ability_namefurion_force_of_nature 1.850e+02 NaN NaN
## ability_namefurion_sprout -1.000e+00 NaN NaN
## ability_namefurion_teleportation 1.280e+02 NaN NaN
## ability_namefurion_wrath_of_nature 1.300e+01 NaN NaN
## ability_nameInvoker_sun_strike 1.220e+02 NaN NaN
## ability_namejuggernaut_blade_dance 1.100e+02 NaN NaN
## ability_namejuggernaut_blade_fury 8.000e+00 NaN NaN
## ability_namejuggernaut_healing_ward 7.900e+01 NaN NaN
## ability_namejuggernaut_omni_slash 1.000e+00 NaN NaN
## ability_namekunkka_ghostship 2.070e+02 NaN NaN
## ability_namekunkka_return 4.600e+01 NaN NaN
## ability_namekunkka_tidebringer 3.000e+00 NaN NaN
## ability_namekunkka_torrent 5.000e+00 NaN NaN
## ability_namekunkka_x_marks_the_spot 1.370e+02 NaN NaN
## ability_nameleshrac_diabolic_edict 4.000e+00 NaN NaN
## ability_nameleshrac_lightning_storm 3.586e-12 NaN NaN
## ability_nameleshrac_pulse_nova 2.800e+01 NaN NaN
## ability_nameleshrac_split_earth 3.000e+01 NaN NaN
## ability_namelich_chain_frost 2.400e+01 NaN NaN
## ability_namelich_dark_ritual -1.000e+00 NaN NaN
## ability_namelich_frost_armor 1.920e+02 NaN NaN
## ability_namelich_frost_nova 6.100e+01 NaN NaN
## ability_namelife_stealer_consume 7.900e+01 NaN NaN
## ability_namelife_stealer_feast 7.200e+01 NaN NaN
## ability_namelife_stealer_infest 8.100e+01 NaN NaN
## ability_namelife_stealer_open_wounds 5.000e+01 NaN NaN
## ability_namelife_stealer_rage 8.800e+01 NaN NaN
## ability_namelina_dragon_slave 1.100e+01 NaN NaN
## ability_namelina_fiery_soul 1.140e+02 NaN NaN
## ability_namelina_laguna_blade 8.400e+01 NaN NaN
## ability_namelina_light_strike_array 6.700e+01 NaN NaN
## ability_namelion_finger_of_death 9.400e+01 NaN NaN
## ability_namelion_impale 2.670e+02 NaN NaN
## ability_namelion_mana_drain 1.010e+02 NaN NaN
## ability_namelion_voodoo 7.300e+01 NaN NaN
## ability_nameluna_eclipse 9.500e+01 NaN NaN
## ability_nameluna_lucent_beam 4.100e+01 NaN NaN
## ability_nameluna_lunar_blessing 4.000e+00 NaN NaN
## ability_nameluna_moon_glaive -1.000e+00 NaN NaN
## ability_namemirana_arrow 2.090e+02 NaN NaN
## ability_namemirana_invis 2.270e+02 NaN NaN
## ability_namemirana_leap 2.730e+02 NaN NaN
## ability_namemirana_starfall 2.000e+01 NaN NaN
## ability_namemorphling_adaptive_strike 2.510e+02 NaN NaN
## ability_namemorphling_morph 1.090e+02 NaN NaN
## ability_namemorphling_morph_agi 1.050e+02 NaN NaN
## ability_namemorphling_morph_replicate 2.440e+02 NaN NaN
## ability_namemorphling_morph_str 1.600e+01 NaN NaN
## ability_namemorphling_replicate 7.100e+01 NaN NaN
## ability_namemorphling_waveform 7.500e+01 NaN NaN
## ability_namenecrolyte_death_pulse 6.100e+01 NaN NaN
## ability_namenecrolyte_heartstopper_aura 5.000e+01 NaN NaN
## ability_namenecrolyte_reapers_scythe 1.000e+00 NaN NaN
## ability_namenecrolyte_sadist 5.500e+01 NaN NaN
## ability_namenecronomicon_archer_aoe 4.000e+00 NaN NaN
## ability_namenecronomicon_archer_mana_burn 1.710e+02 NaN NaN
## ability_namenecronomicon_warrior_last_will 1.120e+02 NaN NaN
## ability_namenecronomicon_warrior_mana_burn 1.000e+00 NaN NaN
## ability_namenecronomicon_warrior_sight 9.000e+00 NaN NaN
## ability_namenevermore_dark_lord 1.800e+01 NaN NaN
## ability_namenevermore_necromastery 4.300e+01 NaN NaN
## ability_namenevermore_requiem 2.100e+01 NaN NaN
## ability_namenevermore_shadowraze1 2.050e+02 NaN NaN
## ability_namenevermore_shadowraze2 4.000e+00 NaN NaN
## ability_namenevermore_shadowraze3 8.100e+01 NaN NaN
## ability_namephantom_assassin_blur -1.000e+00 NaN NaN
## ability_namephantom_assassin_coup_de_grace 8.700e+01 NaN NaN
## ability_namephantom_assassin_phantom_strike 1.720e+02 NaN NaN
## ability_namephantom_assassin_stifling_dagger 1.310e+02 NaN NaN
## ability_namephantom_lancer_doppelwalk 5.500e+01 NaN NaN
## ability_namephantom_lancer_juxtapose 1.700e+01 NaN NaN
## ability_namephantom_lancer_phantom_edge 1.820e+02 NaN NaN
## ability_namephantom_lancer_spirit_lance -1.000e+00 NaN NaN
## ability_namepuck_dream_coil 4.200e+01 NaN NaN
## ability_namepuck_ethereal_jaunt 9.400e+01 NaN NaN
## ability_namepuck_illusory_orb 4.000e+00 NaN NaN
## ability_namepuck_phase_shift -1.000e+00 NaN NaN
## ability_namepuck_waning_rift 3.000e+00 NaN NaN
## ability_namepudge_dismember -1.000e+00 NaN NaN
## ability_namepudge_flesh_heap 9.900e+01 NaN NaN
## ability_namepudge_meat_hook 1.300e+01 NaN NaN
## ability_namepudge_rot -1.000e+00 NaN NaN
## ability_namepugna_decrepify 8.300e+01 NaN NaN
## ability_namepugna_life_drain 6.000e+00 NaN NaN
## ability_namepugna_nether_blast 9.000e+00 NaN NaN
## ability_namepugna_nether_ward 2.120e+02 NaN NaN
## ability_namequeenofpain_blink 7.000e+00 NaN NaN
## ability_namequeenofpain_scream_of_pain 8.800e+01 NaN NaN
## ability_namequeenofpain_shadow_strike 3.000e+00 NaN NaN
## ability_namequeenofpain_sonic_wave 1.100e+01 NaN NaN
## ability_namerattletrap_battery_assault 1.730e+02 NaN NaN
## ability_namerattletrap_hookshot 3.600e+01 NaN NaN
## ability_namerattletrap_power_cogs 1.100e+02 NaN NaN
## ability_namerattletrap_rocket_flare 3.000e+01 NaN NaN
## ability_namerazor_eye_of_the_storm 1.080e+02 NaN NaN
## ability_namerazor_plasma_field 1.090e+02 NaN NaN
## ability_namerazor_static_link 1.090e+02 NaN NaN
## ability_namerazor_unstable_current 1.340e+02 NaN NaN
## ability_nameriki_blink_strike 3.110e+02 NaN NaN
## ability_nameriki_permanent_invisibility 1.980e+02 NaN NaN
## ability_nameriki_smoke_screen 1.760e+02 NaN NaN
## ability_nameriki_tricks_of_the_trade 2.380e+02 NaN NaN
## ability_nameroshan_bash 1.670e+02 NaN NaN
## ability_nameroshan_devotion 1.760e+02 NaN NaN
## ability_nameroshan_inherent_buffs 3.200e+02 NaN NaN
## ability_nameroshan_slam 1.200e+01 NaN NaN
## ability_nameroshan_spell_block 2.100e+01 NaN NaN
## ability_namesandking_burrowstrike 2.190e+02 NaN NaN
## ability_namesandking_caustic_finale 1.420e+02 NaN NaN
## ability_namesandking_epicenter 7.800e+01 NaN NaN
## ability_namesandking_sand_storm 1.590e+02 NaN NaN
## ability_nameshadow_shaman_ether_shock 1.000e+00 NaN NaN
## ability_nameshadow_shaman_mass_serpent_ward 1.890e+02 NaN NaN
## ability_nameshadow_shaman_shackles 1.800e+01 NaN NaN
## ability_nameshadow_shaman_voodoo 1.780e+02 NaN NaN
## ability_nameskeleton_king_hellfire_blast 1.580e+02 NaN NaN
## ability_nameskeleton_king_mortal_strike 1.480e+02 NaN NaN
## ability_nameskeleton_king_reincarnation 6.000e+01 NaN NaN
## ability_nameskeleton_king_vampiric_aura -1.000e+00 NaN NaN
## ability_nameslardar_amplify_damage 9.600e+01 NaN NaN
## ability_nameslardar_bash 9.500e+01 NaN NaN
## ability_nameslardar_slithereen_crush 1.100e+02 NaN NaN
## ability_nameslardar_sprint 4.000e+00 NaN NaN
## ability_namesniper_assassinate 9.800e+01 NaN NaN
## ability_namesniper_headshot 1.650e+02 NaN NaN
## ability_namesniper_shrapnel 5.200e+01 NaN NaN
## ability_namesniper_take_aim 4.600e+01 NaN NaN
## ability_namestorm_spirit_ball_lightning 7.600e+01 NaN NaN
## ability_namestorm_spirit_electric_vortex 9.500e+01 NaN NaN
## ability_namestorm_spirit_overload 2.000e+00 NaN NaN
## ability_namestorm_spirit_static_remnant 5.000e+01 NaN NaN
## ability_namesven_gods_strength 1.520e+02 NaN NaN
## ability_namesven_great_cleave 2.500e+01 NaN NaN
## ability_namesven_storm_bolt 1.500e+01 NaN NaN
## ability_namesven_warcry 5.400e+01 NaN NaN
## ability_nametemplar_assassin_meld 1.050e+02 NaN NaN
## ability_nametemplar_assassin_psi_blades 1.200e+01 NaN NaN
## ability_nametemplar_assassin_psionic_trap 4.900e+01 NaN NaN
## ability_nametemplar_assassin_refraction 5.800e+01 NaN NaN
## ability_nametemplar_assassin_self_trap 5.000e+00 NaN NaN
## ability_nametemplar_assassin_trap 1.730e+02 NaN NaN
## ability_nametidehunter_anchor_smash 2.250e+02 NaN NaN
## ability_nametidehunter_gush -1.000e+00 NaN NaN
## ability_nametidehunter_kraken_shell 2.690e+02 NaN NaN
## ability_nametidehunter_ravage 1.330e+02 NaN NaN
## ability_nametinker_heat_seeking_missile 5.700e+01 NaN NaN
## ability_nametinker_laser 3.925e-12 NaN NaN
## ability_nametinker_march_of_the_machines -1.000e+00 NaN NaN
## ability_nametinker_rearm 9.300e+01 NaN NaN
## ability_nametiny_avalanche 4.000e+00 NaN NaN
## ability_nametiny_craggy_exterior 3.600e+01 NaN NaN
## ability_nametiny_grow 2.550e+02 NaN NaN
## ability_nametiny_toss 1.070e+02 NaN NaN
## ability_namevengefulspirit_command_aura 1.300e+02 NaN NaN
## ability_namevengefulspirit_magic_missile 1.150e+02 NaN NaN
## ability_namevengefulspirit_nether_swap 2.670e+02 NaN NaN
## ability_namevengefulspirit_wave_of_terror 8.400e+01 NaN NaN
## ability_namevenomancer_plague_ward 3.000e+00 NaN NaN
## ability_namevenomancer_poison_nova 2.800e+01 NaN NaN
## ability_namevenomancer_poison_sting -1.000e+00 NaN NaN
## ability_namevenomancer_venomous_gale 4.800e+01 NaN NaN
## ability_nameviper_corrosive_skin 1.980e+02 NaN NaN
## ability_nameviper_nethertoxin 1.800e+01 NaN NaN
## ability_nameviper_poison_attack -1.000e+00 NaN NaN
## ability_nameviper_viper_strike 4.800e+01 NaN NaN
## ability_namewarlock_fatal_bonds 3.090e+02 NaN NaN
## ability_namewarlock_golem_flaming_fists 2.000e+00 NaN NaN
## ability_namewarlock_golem_permanent_immolation 5.000e+00 NaN NaN
## ability_namewarlock_rain_of_chaos 1.620e+02 NaN NaN
## ability_namewarlock_shadow_word 9.500e+01 NaN NaN
## ability_namewarlock_upheaval 1.320e+02 NaN NaN
## ability_namewindrunner_focusfire 2.570e+02 NaN NaN
## ability_namewindrunner_powershot 9.200e+01 NaN NaN
## ability_namewindrunner_shackleshot 4.000e+00 NaN NaN
## ability_namewindrunner_windrun -1.000e+00 NaN NaN
## ability_namewitch_doctor_death_ward 1.090e+02 NaN NaN
## ability_namewitch_doctor_maledict 5.700e+01 NaN NaN
## ability_namewitch_doctor_paralyzing_cask 9.000e+00 NaN NaN
## ability_namewitch_doctor_voodoo_restoration 2.190e+02 NaN NaN
## ability_namezuus_arc_lightning 7.800e+01 NaN NaN
## ability_namezuus_lightning_bolt 4.000e+00 NaN NaN
## ability_namezuus_static_field 6.100e+01 NaN NaN
## ability_namezuus_thundergods_wrath 3.700e+01 NaN NaN
## radiant_winTRUE NA NA NA
## item_id NA NA NA
## duration NA NA NA
## Pr(>|t|)
## (Intercept) NaN
## ability_nameantimage_blink NaN
## ability_nameantimage_mana_break NaN
## ability_nameantimage_mana_void NaN
## ability_nameantimage_spell_shield NaN
## ability_nameattribute_bonus NaN
## ability_nameaxe_battle_hunger NaN
## ability_nameaxe_berserkers_call NaN
## ability_nameaxe_counter_helix NaN
## ability_nameaxe_culling_blade NaN
## ability_namebane_brain_sap NaN
## ability_namebane_enfeeble NaN
## ability_namebane_fiends_grip NaN
## ability_namebane_nightmare NaN
## ability_namebeastmaster_boar_poison NaN
## ability_namebeastmaster_call_of_the_wild NaN
## ability_namebeastmaster_hawk_invisibility NaN
## ability_namebeastmaster_inner_beast NaN
## ability_namebeastmaster_primal_roar NaN
## ability_namebeastmaster_wild_axes NaN
## ability_namebloodseeker_blood_bath NaN
## ability_namebloodseeker_bloodrage NaN
## ability_namebloodseeker_rupture NaN
## ability_namebloodseeker_thirst NaN
## ability_namecourier_burst NaN
## ability_namecourier_return_stash_items NaN
## ability_namecourier_return_to_base NaN
## ability_namecourier_shield NaN
## ability_namecourier_take_stash_items NaN
## ability_namecourier_transfer_items NaN
## ability_namecrystal_maiden_brilliance_aura NaN
## ability_namecrystal_maiden_crystal_nova NaN
## ability_namecrystal_maiden_freezing_field NaN
## ability_namecrystal_maiden_frostbite NaN
## ability_namedark_seer_ion_shell NaN
## ability_namedark_seer_surge NaN
## ability_namedark_seer_vacuum NaN
## ability_namedazzle_poison_touch NaN
## ability_namedazzle_shadow_wave NaN
## ability_namedazzle_shallow_grave NaN
## ability_namedazzle_weave NaN
## ability_namedeath_prophet_carrion_swarm NaN
## ability_namedeath_prophet_exorcism NaN
## ability_namedeath_prophet_silence NaN
## ability_namedeath_prophet_witchcraft NaN
## ability_namedefault_attack NaN
## ability_namedragon_knight_breathe_fire NaN
## ability_namedragon_knight_dragon_blood NaN
## ability_namedragon_knight_dragon_tail NaN
## ability_namedragon_knight_elder_dragon_form NaN
## ability_namedragon_knight_frost_breath NaN
## ability_namedrow_ranger_frost_arrows NaN
## ability_namedrow_ranger_marksmanship NaN
## ability_namedrow_ranger_silence NaN
## ability_namedrow_ranger_trueshot NaN
## ability_nameearthshaker_aftershock NaN
## ability_nameearthshaker_echo_slam NaN
## ability_nameearthshaker_enchant_totem NaN
## ability_nameearthshaker_fissure NaN
## ability_nameenigma_black_hole NaN
## ability_nameenigma_demonic_conversion NaN
## ability_nameenigma_malefice NaN
## ability_nameenigma_midnight_pulse NaN
## ability_namefaceless_void_backtrack NaN
## ability_namefaceless_void_chronosphere NaN
## ability_namefaceless_void_time_lock NaN
## ability_namefaceless_void_time_walk NaN
## ability_namefurion_force_of_nature NaN
## ability_namefurion_sprout NaN
## ability_namefurion_teleportation NaN
## ability_namefurion_wrath_of_nature NaN
## ability_nameInvoker_sun_strike NaN
## ability_namejuggernaut_blade_dance NaN
## ability_namejuggernaut_blade_fury NaN
## ability_namejuggernaut_healing_ward NaN
## ability_namejuggernaut_omni_slash NaN
## ability_namekunkka_ghostship NaN
## ability_namekunkka_return NaN
## ability_namekunkka_tidebringer NaN
## ability_namekunkka_torrent NaN
## ability_namekunkka_x_marks_the_spot NaN
## ability_nameleshrac_diabolic_edict NaN
## ability_nameleshrac_lightning_storm NaN
## ability_nameleshrac_pulse_nova NaN
## ability_nameleshrac_split_earth NaN
## ability_namelich_chain_frost NaN
## ability_namelich_dark_ritual NaN
## ability_namelich_frost_armor NaN
## ability_namelich_frost_nova NaN
## ability_namelife_stealer_consume NaN
## ability_namelife_stealer_feast NaN
## ability_namelife_stealer_infest NaN
## ability_namelife_stealer_open_wounds NaN
## ability_namelife_stealer_rage NaN
## ability_namelina_dragon_slave NaN
## ability_namelina_fiery_soul NaN
## ability_namelina_laguna_blade NaN
## ability_namelina_light_strike_array NaN
## ability_namelion_finger_of_death NaN
## ability_namelion_impale NaN
## ability_namelion_mana_drain NaN
## ability_namelion_voodoo NaN
## ability_nameluna_eclipse NaN
## ability_nameluna_lucent_beam NaN
## ability_nameluna_lunar_blessing NaN
## ability_nameluna_moon_glaive NaN
## ability_namemirana_arrow NaN
## ability_namemirana_invis NaN
## ability_namemirana_leap NaN
## ability_namemirana_starfall NaN
## ability_namemorphling_adaptive_strike NaN
## ability_namemorphling_morph NaN
## ability_namemorphling_morph_agi NaN
## ability_namemorphling_morph_replicate NaN
## ability_namemorphling_morph_str NaN
## ability_namemorphling_replicate NaN
## ability_namemorphling_waveform NaN
## ability_namenecrolyte_death_pulse NaN
## ability_namenecrolyte_heartstopper_aura NaN
## ability_namenecrolyte_reapers_scythe NaN
## ability_namenecrolyte_sadist NaN
## ability_namenecronomicon_archer_aoe NaN
## ability_namenecronomicon_archer_mana_burn NaN
## ability_namenecronomicon_warrior_last_will NaN
## ability_namenecronomicon_warrior_mana_burn NaN
## ability_namenecronomicon_warrior_sight NaN
## ability_namenevermore_dark_lord NaN
## ability_namenevermore_necromastery NaN
## ability_namenevermore_requiem NaN
## ability_namenevermore_shadowraze1 NaN
## ability_namenevermore_shadowraze2 NaN
## ability_namenevermore_shadowraze3 NaN
## ability_namephantom_assassin_blur NaN
## ability_namephantom_assassin_coup_de_grace NaN
## ability_namephantom_assassin_phantom_strike NaN
## ability_namephantom_assassin_stifling_dagger NaN
## ability_namephantom_lancer_doppelwalk NaN
## ability_namephantom_lancer_juxtapose NaN
## ability_namephantom_lancer_phantom_edge NaN
## ability_namephantom_lancer_spirit_lance NaN
## ability_namepuck_dream_coil NaN
## ability_namepuck_ethereal_jaunt NaN
## ability_namepuck_illusory_orb NaN
## ability_namepuck_phase_shift NaN
## ability_namepuck_waning_rift NaN
## ability_namepudge_dismember NaN
## ability_namepudge_flesh_heap NaN
## ability_namepudge_meat_hook NaN
## ability_namepudge_rot NaN
## ability_namepugna_decrepify NaN
## ability_namepugna_life_drain NaN
## ability_namepugna_nether_blast NaN
## ability_namepugna_nether_ward NaN
## ability_namequeenofpain_blink NaN
## ability_namequeenofpain_scream_of_pain NaN
## ability_namequeenofpain_shadow_strike NaN
## ability_namequeenofpain_sonic_wave NaN
## ability_namerattletrap_battery_assault NaN
## ability_namerattletrap_hookshot NaN
## ability_namerattletrap_power_cogs NaN
## ability_namerattletrap_rocket_flare NaN
## ability_namerazor_eye_of_the_storm NaN
## ability_namerazor_plasma_field NaN
## ability_namerazor_static_link NaN
## ability_namerazor_unstable_current NaN
## ability_nameriki_blink_strike NaN
## ability_nameriki_permanent_invisibility NaN
## ability_nameriki_smoke_screen NaN
## ability_nameriki_tricks_of_the_trade NaN
## ability_nameroshan_bash NaN
## ability_nameroshan_devotion NaN
## ability_nameroshan_inherent_buffs NaN
## ability_nameroshan_slam NaN
## ability_nameroshan_spell_block NaN
## ability_namesandking_burrowstrike NaN
## ability_namesandking_caustic_finale NaN
## ability_namesandking_epicenter NaN
## ability_namesandking_sand_storm NaN
## ability_nameshadow_shaman_ether_shock NaN
## ability_nameshadow_shaman_mass_serpent_ward NaN
## ability_nameshadow_shaman_shackles NaN
## ability_nameshadow_shaman_voodoo NaN
## ability_nameskeleton_king_hellfire_blast NaN
## ability_nameskeleton_king_mortal_strike NaN
## ability_nameskeleton_king_reincarnation NaN
## ability_nameskeleton_king_vampiric_aura NaN
## ability_nameslardar_amplify_damage NaN
## ability_nameslardar_bash NaN
## ability_nameslardar_slithereen_crush NaN
## ability_nameslardar_sprint NaN
## ability_namesniper_assassinate NaN
## ability_namesniper_headshot NaN
## ability_namesniper_shrapnel NaN
## ability_namesniper_take_aim NaN
## ability_namestorm_spirit_ball_lightning NaN
## ability_namestorm_spirit_electric_vortex NaN
## ability_namestorm_spirit_overload NaN
## ability_namestorm_spirit_static_remnant NaN
## ability_namesven_gods_strength NaN
## ability_namesven_great_cleave NaN
## ability_namesven_storm_bolt NaN
## ability_namesven_warcry NaN
## ability_nametemplar_assassin_meld NaN
## ability_nametemplar_assassin_psi_blades NaN
## ability_nametemplar_assassin_psionic_trap NaN
## ability_nametemplar_assassin_refraction NaN
## ability_nametemplar_assassin_self_trap NaN
## ability_nametemplar_assassin_trap NaN
## ability_nametidehunter_anchor_smash NaN
## ability_nametidehunter_gush NaN
## ability_nametidehunter_kraken_shell NaN
## ability_nametidehunter_ravage NaN
## ability_nametinker_heat_seeking_missile NaN
## ability_nametinker_laser NaN
## ability_nametinker_march_of_the_machines NaN
## ability_nametinker_rearm NaN
## ability_nametiny_avalanche NaN
## ability_nametiny_craggy_exterior NaN
## ability_nametiny_grow NaN
## ability_nametiny_toss NaN
## ability_namevengefulspirit_command_aura NaN
## ability_namevengefulspirit_magic_missile NaN
## ability_namevengefulspirit_nether_swap NaN
## ability_namevengefulspirit_wave_of_terror NaN
## ability_namevenomancer_plague_ward NaN
## ability_namevenomancer_poison_nova NaN
## ability_namevenomancer_poison_sting NaN
## ability_namevenomancer_venomous_gale NaN
## ability_nameviper_corrosive_skin NaN
## ability_nameviper_nethertoxin NaN
## ability_nameviper_poison_attack NaN
## ability_nameviper_viper_strike NaN
## ability_namewarlock_fatal_bonds NaN
## ability_namewarlock_golem_flaming_fists NaN
## ability_namewarlock_golem_permanent_immolation NaN
## ability_namewarlock_rain_of_chaos NaN
## ability_namewarlock_shadow_word NaN
## ability_namewarlock_upheaval NaN
## ability_namewindrunner_focusfire NaN
## ability_namewindrunner_powershot NaN
## ability_namewindrunner_shackleshot NaN
## ability_namewindrunner_windrun NaN
## ability_namewitch_doctor_death_ward NaN
## ability_namewitch_doctor_maledict NaN
## ability_namewitch_doctor_paralyzing_cask NaN
## ability_namewitch_doctor_voodoo_restoration NaN
## ability_namezuus_arc_lightning NaN
## ability_namezuus_lightning_bolt NaN
## ability_namezuus_static_field NaN
## ability_namezuus_thundergods_wrath NaN
## radiant_winTRUE NA
## item_id NA
## duration NA
##
## Residual standard error: NaN on 0 degrees of freedom
## Multiple R-squared: 1, Adjusted R-squared: NaN
## F-statistic: NaN on 249 and 0 DF, p-value: NA
Using all of the variables is bad idea because it wont show any other values. As we can see above, all of the other values are showing NaN and couldn’t compute the result.
Now, its time to use visualization for our y ~ x regression.
ggplot(df,aes(x= item_id, y = first_blood_time))+
geom_jitter(color = "Blue")+
geom_smooth(method = lm)
## `geom_smooth()` using formula 'y ~ x'
Well, after seeing this plot we can surely say that it is not appropriate to apply linear regression to this data and use to predict first_blood_time because the shadowing around the line is the confidence interval and some fall into this interval but most of the the data are not inside the interval.
let’s do multiple too see the difference.
ggplot(df,aes(x= item_id, y = first_blood_time, color = radiant_win))+
geom_point()+
geom_smooth(method = lm)
## `geom_smooth()` using formula 'y ~ x'
From the above, plot we can clearly see two lines with TRUE and FALSE. Even though it is showing two different lines compared to our single regression. But this plot is also not appropriate to use regression because most of the values are not inside the shadow of these two lines which makes it difficult to calculate the result.
ggplot(df,aes(x= item_id, y = first_blood_time))+
geom_point()+
geom_smooth()
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
As we can see, the plot is scattered everywhere on the graph and is highly non-linear. Even with my sample size which was pretty big the plot is non-linear.