如果R資料框中某些列是分類變數,如何求列方差?
如果R資料框中某些列是分類變數,要查詢列方差,我們可以按照以下步驟操作:
首先,建立一個數據框。
然後,使用plyr包中的numcolwise函式查詢某些列為分類變數時的列方差。
示例
建立資料框
讓我們建立一個如下所示的資料框:
Group<-sample(c("I","II","III","IV"),25,replace=TRUE)
Num1<-sample(1:50,25)
Num2<-sample(1:50,25)
df1<-data.frame(Group,Num1,Num2)
df1輸出
執行上述指令碼後,將生成以下輸出(由於隨機化,此輸出在您的系統上可能會有所不同):
Group Num1 Num2 1 II 11 11 2 III 29 45 3 II 2 5 4 IV 3 13 5 II 9 30 6 IV 40 18 7 III 22 20 8 IV 28 37 9 III 50 42 10 I 10 43 11 II 18 38 12 II 14 31 13 IV 1 19 14 IV 24 35 15 II 15 48 16 IV 36 12 17 IV 19 1 18 I 48 50 19 IV 43 7 20 III 26 15 21 I 35 46 22 III 39 34 23 IV 38 28 24 IV 23 8 25 I 32 47
如果某些列是分類變數,則查詢列方差
使用plyr包中的numcolwise函式查詢資料框df1中數值列的列方差:
Group<-sample(c("I","II","III","IV"),25,replace=TRUE)
Num1<-sample(1:50,25)
Num2<-sample(1:50,25)
df1<-data.frame(Group,Num1,Num2)
library(plyr)
numcolwise(var)(df1)輸出
Num1 Num2 1 206.0833 242.8933
示例2
建立資料框
讓我們建立一個如下所示的資料框:
Categories<-sample(c("First","Second","Third"),25,replace=TRUE)
Score<-sample(1:10,25,replace=TRUE)
Price<-sample(1:5,25,replace=TRUE)
df2<-data.frame(Categories,Score,Price)
df2輸出
執行上述指令碼後,將生成以下輸出(由於隨機化,此輸出在您的系統上可能會有所不同):
Categories Score Price 1 First 1 3 2 Third 5 3 3 Second 6 1 4 First 3 3 5 First 2 2 6 Second 2 4 7 Third 6 5 8 Third 7 4 9 Third 6 4 10 Second 7 4 11 First 7 4 12 Second 6 2 13 First 9 3 14 Second 8 5 15 Third 6 4 16 Third 2 5 17 First 10 1 18 First 1 5 19 Second 7 4 20 First 1 2 21 Third 10 3 22 Third 10 5 23 Second 8 3 24 Second 10 2 25 Second 9 1
如果某些列是分類變數,則查詢列方差
使用plyr包中的numcolwise函式查詢資料框df2中數值列的列方差:
Categories<-sample(c("First","Second","Third"),25,replace=TRUE)
Score<-sample(1:10,25,replace=TRUE)
Price<-sample(1:5,25,replace=TRUE)
df2<-data.frame(Categories,Score,Price)
library(plyr)
numcolwise(var)(df2)輸出
Score Price 1 9.456667 1.71
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP