① R語言如何對一整列數據取對數
a=matrix(1:9,nrow=3)
log(a[,1])
a[,1]=log(a[,1])
② R語言初步-數據轉換-4.mutate()函數
mutate:變異 ; 突變 ; 改變 ; 數據修改
緊接著創建新的列gain和speed
新創建的列同時也可以使用(但是保留的方法仍然是賦值給某個名稱):
由於系統顯示限制,最後一列沒有展示出來,運行view()函數即可:
如果只想要保留新的變數,那就使用transmute()函數:
此時參與計算的arr_delay、dep_delay、air_time、hours都消失,只有新轉換的gain、hours 、gain_per_hour三列。
mutare()函數可以和前面提到的幾個函數結合起來使用。其中進行運算的時候,肯定會涉及到R語言的計算語言,以下列出幾個常用的:
舉例:
③ R語言怎麼把股票日收盤價轉換成對數收益率
R表示是融資融券的品種;N是新股的意思,new的首字母,第一天上市會戴這個帽子;K是科創板的股票,代碼688開頭。
股票收益率是反映股票收益水平的指標。投資者購買股票或債券最關心的是能獲得多少收益,衡量一項證券投資收益大小以收益率來表示。
股票收益率=收益額/原始投資額。
溫馨提示:
1、以上信息僅供參考,不作任何建議;
2、投資有風險,入市需謹慎。
應答時間:2021-10-18,最新業務變化請以平安銀行官網公布為准。
[平安銀行我知道]想要知道更多?快來看「平安銀行我知道」吧~
https://b.pingan.com.cn/paim/iknow/index.html
④ R語言數據轉置
#讀取wet.txt需要轉換的目標矩陣,顯示原行列。本例中行為sample,列為otu
otu<-read.delim('E:\\R語言網路分析\\wet.txt',sep='\t',row.names=1)
otu1<-t(otu)
write.table(otu1,file='otu9.txt',sep='\t',row.names=T)
#讀取wet.xlsx需要轉換的目標矩陣,顯示原行列。本例中行為sample,列為otu
library(openxlsx)
otu<-read_excel("E:\\R語言網路分析\\wet.xlsx")
otu1=t(otu)
##導出已轉置文件到本地儲存,此處導出的文件為Excel格式文件
write.xlsx(otu1,file="otu11.xlsx",sep='\t',row.names=T)
# 將otu1保存為csv文件
write.csv(otu1,file="otu11.csv")
library(openxlsx)
otu<-read_excel("E:\\R語言網路分析\\wet.xlsx")
head(otu)
class(otu)
otu1=t(otu)
write.xlsx(otu1,file="otu2.xlsx") ##導出已轉置文件到本地儲存,此處導出的文件為Excel格式文件
# 將otu1保存為csv文件
write.csv(otu1,file="otu5.csv")
⑤ R語言-數據轉化(log和根號)
在我們實際建模擬合時,若數據中某個變數過度離散,則需要做轉化,常見的有做log和根號兩種方式。 install.packages('gridExtra') library(gridExtra) #先畫一個柱狀圖,觀察friend_count這個變數的整體趨勢,發現過度離散 p1<-ggplot(aes(x=friend_count),data=pf)+geom_histogram() #log轉化 p2<-p1+scale_x_log10() #根號轉化 p3<-p1+scale_x_sqrt() #將三張圖放在一個面板里 grid.arrange(p1,p2,p3,ncol=1)最後我們發現,做了log轉化的數據更接近正態分布。⑥ 【R語言】--- 寬數據和長數據之間的相互轉換
寬數據是指數據集對所有的變數進行了明確的細分,各變數的值不存在重復循環的情況也無法歸類。數據總體的表現為 變數多而觀察值少。每一列為一個變數,每一行為變數所對應的值。例如s1-s10為變數名:
長數據是指數據集中的變數沒有做明確的細分,即變數中至少有一個變數中的元素存在值嚴重重復循環的情況(可以歸為幾類),表格整體的形狀為長方形,即 變數少而觀察值多。一列包含了所有的變數,而另一列則是與之相關的值。例如S包含了所有的變數名:
長數據與寬數據之間的轉換通常是作圖需要,寬數據格式無法利用ggplot做出圖形。例如分組柱狀圖等均需要長數據。此外,當數據清洗完成後,導入某些軟體時,例如導入SPSS軟體進行方差分析或者相關性分析等時候,寬數據格式會更好。因此需要對數據進行長寬格式相互轉換。
目前常用的轉換方式有兩種,分別是手動復制粘貼和軟體輔助(本文僅涉及R語言:R語言主要有tidyr包和reshape2包)。如數據量小的話,手動復制粘貼也是可以的;但當數據量十分龐大時,利用軟體轉換還是比較方便的。本文介紹R語言的tidyr包和reshape2包,掌握好這兩個包的轉換方法,數據前處理將會輕松很多。
可以通過R語言判斷兩種方法轉化後的數據是否完全一致
可以用R語言判斷兩種方法轉化後的數據是否完全一致,返回TRUE則為完全相等
由於data_wide_s的s1-s10並非按照數字順序排列,因此有FALSE,但實際上是沒有問題的
通過這里也可以看到,兩種方法轉換的數據觀測值數和變數數一致,說明沒有問題。
[1] https://blog.csdn.net/Ray_zhu/article/details/78679913
[2] https://cran.r-project.org/web/packages/tidyr/index.html
[3] https://cran.r-project.org/web/packages/reshape2/index.html