From 87d0c4bbb59a551d4ae2df45391b7996a0283117 Mon Sep 17 00:00:00 2001 From: ION606 Date: Sun, 14 Sep 2025 11:25:41 -0400 Subject: [PATCH] I'm so confused --- Lab 1/Lab1_code_sample.R | 44 ++++++++++++++++++++++++++++----------- Lab 1/Rplots.pdf | Bin 0 -> 5886 bytes Lab 1/findMinMax.sh | 42 +++++++++++++++++++++++++++++++++++++ 3 files changed, 74 insertions(+), 12 deletions(-) create mode 100644 Lab 1/Rplots.pdf create mode 100644 Lab 1/findMinMax.sh diff --git a/Lab 1/Lab1_code_sample.R b/Lab 1/Lab1_code_sample.R index fb291ee..a4ba08b 100755 --- a/Lab 1/Lab1_code_sample.R +++ b/Lab 1/Lab1_code_sample.R @@ -1,9 +1,12 @@ library(readr) library(EnvStats) +# install.packages(c("readr", "EnvStats")) # set working directory (relative path) -setwd("~/Desktop/R/Lab 1/") + +# paste function my beloved <3 +setwd(paste(getwd(), "Lab 1", sep="/")) # read data epi.data <- read_csv("epi_results_2024_pop_gdp.csv") @@ -12,7 +15,7 @@ epi.data <- read_csv("epi_results_2024_pop_gdp.csv") View(epi.data) # print summary of variables in dataframe -summary(epi.data$RLI.new) +summary(epi.data$epi_results_2024_pop_gdp.csv.new) # print values in variable epi.data$RLI.new @@ -58,7 +61,7 @@ PHL.noNA PHL.above30 <- PHL.noNA[PHL.noNA>30] PHL.above30 - + # stats summary(PHL.above30) @@ -69,21 +72,38 @@ boxplot(RLI, PHL.above30, names = c("RHI","PHL")) ### Histograms ### # histogram (frequency distribution) -hist(RLI) +# hist(RLI) # define sequence of values over which to plot histogram -x <- seq(20., 80., 10) - +# I have NO IDEA why this keep breaking but I just started using the range func +rng <- range(RLI, na.rm = TRUE) +lo <- floor(rng[1] / 5) * 5 +hi <- ceiling(rng[2] / 5) * 5 +brks <- seq(lo, hi, by = 1) + +# WHY????? WHY IS IT BREAKING???? +# [1] "range 0 lo 0 hi 100 brks 50" "range 97.7 lo 0 hi 100 brks 50" +# Error in freq && !equidist : 'length = 15' in coercion to 'logical(1)' +# Calls: hist -> hist.default -> plot -> plot.histogram +# Execution halted +print(paste("range", rng, "lo", lo, "hi", hi, "brks", brks)) + +hist(RLI, + breaks = brks, + prob = TRUE) + +x <- seq(20, 90, by = 5) + # histogram (frequency distribution) over range -hist(RLI, x, prob=TRUE) +hist(RLI, x, breaks=brks, prob=TRUE) # print estimated density curve for variable -lines(density(RLI,na.rm=TRUE,bw=1.)) # or try bw=“SJ” +lines(density(RLI, na.rm=TRUE)) # or try bw=“SJ” # print rug rug(RLI) -x <- seq(20., 80., 5) +x <- seq(5., 95., 5) # histogram (frequency distribution) over rabge hist(RLI, breaks = "FD", prob=TRUE) @@ -99,7 +119,7 @@ rug(RLI) hist(RLI.new, breaks = "FD", prob=TRUE) # range -x1<-seq(20,80,1) +x1<-seq(5,95,1) # generate probability density values for a normal distribution with given mean and sd d1 <- dnorm(x1,mean=45, sd=11,log=FALSE) @@ -136,8 +156,8 @@ qqnorm(x); qqline(x) # print quantile-quantile plot for variable with any theoretical distribution -qqplot(rnorm(180), RLI.new.sub, xlab = "Q-Q plot for norm dsn") -qqline(RLI.new.sub) +qqplot(rnorm(180), RLI.sub, xlab = "Q-Q plot for norm dsn") +qqline(RLI.sub) # print quantile-quantile plot for 2 variables qqplot(RLI, PHL, xlab = "Q-Q plot for RHI vs PHL") diff --git a/Lab 1/Rplots.pdf b/Lab 1/Rplots.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7ea21195638ab42e76482802047c282554be88d7 GIT binary patch literal 5886 zcmb7o2UJsOw>DBGC?zyegad+t5JCc>BS=?7s(>_!AwVD`ND`X#E=@s2igW?RK|o3< zf+EtS7g2h#(4?avpxlHR{bt7h|JJ=(D{JNKcek^%o_9ZciyCR^Kwwg`AkpCI;P=7Z z!TmNKAQ&JG;IF!XR8&AvO%F7Zh{5BukVG^frlkazh9jgEVX`n7TowTn2SE++4*%aX zGYk<+u`&U4J&^9s7!(08BoW<7M2eY_2i}2%LVHk8Wu*{OR9E}4@KljF=*$@q8s|XG z0{$x-0BYvrjs~EbNFox8cLJbBNGCJ_kfA7;0RJ(N|IL7^N7eQ~Z zwFEOqOefgf#EsD7gC+$8Mh~l~|1nGF(7+BDz32c^q~W{k0zbkGmzv&>WL|kWmb-4L z(75gQZ0AFv{hGSs3DGJARz9EU^%r2~lqu{6v)W50>&Z7o>$7!{Uwn4vy;@p1evksc z9~Kx_WW)0})aB{~O?2GUR~M=Zf;ep*>aiib)szQ!7^go}MBi-CoXcT3!rvxeQ3sN2 z{gM?+JIK&sUWJyE9O9LvE6fGw=fVzoz25w~F?j99cUv(_78{#e!=lmMbWHi?ojxn4 zaD;EqRzp9kMhq@ab@=q;If~m6u}MPFuO8tY$0>9GxH6hg=8& zvqDZl#*afPVz*lLE3C(@A!c+sLo@6Bvh745yWG> zbS(&&RTS8u_M<=IUNmN>Ir&^|ULA7qqRTQ@5rOa8;!e*nSIwr}y%5>wrE*Qa-V(!~ za#j-_xsac2TD?LQSwmhPdA-5eU^e3$J!qw4LpW}wId;7$TtY`_+i3WS^3Fi7RZNra z%}cc(>)yWP?*H-pUwk@iz%r-3NB!pLm|QtC})3*q?9Jc_-436ndso^fqyUYoy{sli?xy0yg#U z7F7dMw$Oy&1#ta4f;W43R;ea>1jUeLT+?5yhYWO|@- z^rL4MGWt=G%rqk}Ey3C89dN{k*;hQ7KAfc?Rp}rj?@JZv-IBo)PiIU!n?9KqdC`bo zfByK|mH8!$3N9Drt<>bqCrcyog^hbg_rfl{nVWODQR**XV4Lv-cMnu(YY_1It?PDE zxMZBm-awEL{U3`V&UE}GV;6CwfdN>fV9IUq7qb4k7ZiWN^5?zqUttcD-iP&n!TG+% zzkn_;hxp$B-2l%of2gjzc(PPAZ0erYoC_HTE@uEkdo*upPQD9|8`gPtAo|CShH`3Y zv$QGHmoI32JXbF|=hX`95!~d$hCsbWp&sKCXU66TsjRMKdI6~^wkp>La}M%#7~AM3UM@Sja?ZvDDLJu;%V_B;&`%J8RUZAp(F{bkTJ;a$|v8w#UI^~-DLMb2EhRT zofDsN`I%mkd0h{75>M5$R*LApev#KSY{M{rcFkqwRR|)~Svxy)x1hcD`xkN`4=-dw zaj1XYDN$AJyT9-TeW0PB+JT09H>Sp3xyw{=F$biL_B^!M;E{B?llLOS^u>6bH`BsE?SNVk#_4_sJYRtI(@0M7Y?jx5<}blFUG?9Kdk?oZ-+WxTDF zL4x`lR~6H)R%mzYE`&26puUQBR}R)m`l?zLSH>eWp5}gOj!)tBKk7Igc!jG`U2Ix9 zfQ@cyuX~`{^?Q%1XO)G3)G39O=<){H90qMAOXfD+mC2{5_`ABX5^%3u;uXoXb_w>G!|yhe5;HqPmwlF#!Eq>TFad7fL&q` zC;H5rk6Ju6-;ll{gugxe?K|g1w^Usd;{mrCY_fmwOpFZJwPD`4<0_wia`7oU5JK8HA*?ZEEYD14ny_NK8)lQ^^2p`- zF`XxIB@d*XC6XxzoJRAs1*42+B3*+Kr1BE|9l`9p&Y7O|-JIxhM0OWBJ{LgniURNVP3;w?)KI=(x9iY4Ryn+K)ZgzaE~_RsF(h4sH8UIKQZ)o zR1yHFKE{CnSOe7NYywcRYXaC(S~;FXX~}Q^YJhgYAT{vbfHf7T2x(dB*YZy%T_;~>l*k@^ zr^nUVgjVlxonC^}X&5v6`4_ingypo%+_j7o@(;qrCWCS{6H0}n!w(pjF3|I74P0~Q zI+k?Kp@?tdna^@(+JxX{fNN%5_n6bN|6mQxt=&+DmlrIVgAQd|a!t)NMa9K9*)ttD zv_eCNrI~auE7RcF(xFYE^?MhKP2t?)t*c=LzU`duSBq_+*~`3BeOVYrW0V{_v$i#4 z!^hjEplWenlx*0RTq$eNC4Ih2_;Lu`{5D}t(%SE93YtxE9Ui8_*G}k~Mz4GrJ@r0L z5nLaeV9&=pb8xE~UVjo5N<0^#-i-fH%I9}cjz%nTRO%DK)By`YC5pjAAn$!>CiU8` ztn@)GJGwdB*_ygKtfasq1yOt_ZA>HLZga*=b$1)g#58qCv&zSvn1;Pe;k(Q~Z>l3iHf5}%gfR^wNTfRw{DCHd%zq3uXF z3^$GK!U3b&?~$GMP@3qc^(0pRYXUWXb|$Z;C7mQ5kB-{tAINkSht4iZBXPTO2(}mb7_7N7VxaXv9u)0L<4NBzl(pS(&TsuBKuPh8A(|jvY~SBM~K0wNm&IZso-{d z`q2X>(ySRl;wzvIb@s6ER(5WaNFt!w%KtRn^475rbPSptM*MdUifU@;(Q>OVWSKnV zFN~PacAT}I6(b(4p*gHc&N6leZ*%)HoseeEZ?G!iz%rEC8!8-(594iUTY)PGN`;VL z+;yk(V_yn0Y`izgVF^+TF5n1a=TORtk>=oesiTqLEyBzp^!OI|0WC&-_?Ex}!Rlze zgo0LUE=Fx_n9+qhEUyK*!>4nSvdy#Qatn=_jM5*T8Mrhc<^uY{VW8uh)7jfKOGA`Y z;!BT_(y_=&>p4DKHp{W0u+7aFnvIHu#UBa0z<-jvjJAxg>{x%iVmM!OEHb~;@(-m! z{)OnnO&%pzv9LkP{A{-GzPiSCsOS8P-+MoGN7G->62%H6`9vx@H-c$|GX zmaS=hrF|8>rQ^pIa8NBiQ%H<6mibATp2le;Bs;N3M?t?z-}|fx_)FBqSME7MRS}lw zRJ2qK`91f zu@x?Ji2*U8(Bj+qLQ4D0*dVm1mYqG@Fa)D~Dei z(or;1)buIyh*@L!sLLhU6g90mWgIQGBjzNAG7Bp-M4MI*kOp+-FV8C+)|AO-=rO_M zmE)a5%f-2)qtnlqpU*fS_xc*Q`0?yxy>zp48}M!9HfdY=66BKMrTY1kZ{*%c6c)ev z^w8(w>YMWe!*6s3#vjQH_z(0CkRN$Hn&?-@BxAx{Ke&AERd~EgWOa*g=U=*?s2Djj zIv9rNlszG9;k?w(-*bPkZ*Z;ubzfnhQtlVCv?q(%>4kNgJ7HfRuwH60(9J5-oO#fN ziU2jySaiHqA0!mQ0;!eE zyv%3WWbIZqPu_NR!>8lMoc&uOu5vn?I`^a29~Y%S-c~k$9kyAsnW%m|)4ep5eH4p4l|F3@4mDi< z?Dy^)FK@nns(ws+u21v&*80(zxa#?851R$sJlr9&7P$^*;$`ap_=^|mmqFa85{Ko5b_c%U$ zLOifM@YbH(-mwE#2S$TF1wB%4d2u(`|LlV-hO=+ZvW0YpXg8<|x$D`te!W$@et3pu z#w$FeC#YvJd-G*%V^X-kU_3J$OEGic5hSNEd++n08vC}8B!*()I^lNVWvvvgb2+}b z+_{`NX}MQgyj$+H=%I?PS~S~5_eXKQBDJ92=e|#yF5umk9IbX&X*iRuFtsiGUfU-| zN^;Qhe*M-KxJmTBs4lqo2J8mp#MybwjAVWlS3Oy$N_Q_I`I?y?M?Uio zyh3Ij9$D5=7G3tB{rY+7*_ET&A>(A|itr~25t+T94D(#7RGq1NV^%Ukk_O)0jma4FvVQMS1m$ z^d-(u;6LH&x9)aY+`ZyIoLG)7>Bz=*n|GK`4K9p~l8=j7NOeO6M+BbM5tvZAZSnV% z?|pt|gtRaw$CT(l)wkla8L~wiRaDITlg@w9i?cAeUgWr#Km4}Vr?&X>>brjPf=d=w zo48{8bn(X9IoN)#`QZMD@FF1VJ=2b$ z660}38mO}E5?_YA-*oiO-F}O@;*44z_r<=}-Gr$Ha7c3a-N=LT=56f~(x?Ah#ed>Hb2?!60_=2k}hu-Vw{FHXDi@cFyF zz9sZB@!iIE3%+7UyL-=!0|}Fm1-HH0WG_yc>gCd93AN;a*>6WSR+kE54KoAiHpA9; ze&gP-zc23oT$O3#C~GMUj9ItHk}?Ayo*Y z@NuLYB_+zFuwR!yb@b3!Pc#vOLV}<_>jLbT^zX~X{c+;|5P?Gbsg?g%1c(M6>+s*g zczd87LDB$B79{=a1IQr|G6=vC_$7l={&4CC!2OcJT2)F`BR8-qg G2lPMT3=o$9 literal 0 HcmV?d00001 diff --git a/Lab 1/findMinMax.sh b/Lab 1/findMinMax.sh new file mode 100644 index 0000000..3252eec --- /dev/null +++ b/Lab 1/findMinMax.sh @@ -0,0 +1,42 @@ +awk -F, ' +NR==1{ + for(i=1;i<=NF;i++){ + h=$i; gsub(/\r/,"",h) + if(h=="RLI.new") rli=i + if(h=="PHL.new") phl=i + if(h=="country") country=i + if(h=="iso") iso=i + } + next +} +{ + # RLI.new + if(rli){ + v=$rli; gsub(/"/,"",v) + if(v ~ /^[+-]?[0-9]*\.?[0-9]+([eE][+-]?[0-9]+)?$/){ + v+=0 + if(!rli_min_set || vrli_max){ rli_max=v; rli_max_country=$(country); rli_max_iso=$(iso); rli_max_set=1 } + } + } + # PHL.new + if(phl){ + w=$phl; gsub(/"/,"",w) + if(w ~ /^[+-]?[0-9]*\.?[0-9]+([eE][+-]?[0-9]+)?$/){ + w+=0 + if(!phl_min_set || wphl_max){ phl_max=w; phl_max_country=$(country); phl_max_iso=$(iso); phl_max_set=1 } + } + } +} +END{ + if(rli){ + print "RLI.new min:", rli_min, " (", rli_min_iso, "-", rli_min_country, ")" + print "RLI.new max:", rli_max, " (", rli_max_iso, "-", rli_max_country, ")" + } else { print "naur col RLI.new" } + if(phl){ + print "PHL.new min:", phl_min, " (", phl_min_iso, "-", phl_min_country, ")" + print "PHL.new max:", phl_max, " (", phl_max_iso, "-", phl_max_country, ")" + } else { print "naur col PHL.new" } +} +' epi_results_2024_pop_gdp.csv \ No newline at end of file