如果R資料框中某些列是分類變數,如何找到每列值的正弦值?


如果R資料框中某些列是分類變數,要查詢每列值的正弦值,我們可以按照以下步驟操作:

  • 首先,建立一個數據框。

  • 然後,使用plyr包中的numcolwise函式來查詢資料框中每列值的正弦值,即使某些列是分類變數。

示例

建立資料框

讓我們建立一個如下所示的資料框:

Level<-sample(c("low","medium","high"),25,replace=TRUE)
Group<-sample(c("first","second"),25,replace=TRUE)
DV1<-sample(1:5,25,replace=TRUE)
DV2<-sample(1:5,25,replace=TRUE)
df<-data.frame(Level,Group,DV1,DV2)
df

輸出

執行上述指令碼後,將生成以下輸出(此輸出由於隨機化而可能因您的系統而異):

   Level  Group DV1 DV2
1  low    first  1  1
2  low    second 1  5
3  medium first  5  3
4  low    first  4  1
5  low    second 2  5
6  low    first  3  3
7  high   second 3  1
8  low    second 1  1
9  high   first  2  4
10 low    second 1  3
11 high   first  2  5
12 low    first  3  2
13 medium second 5  4
14 low    second 5  4
15 low    second 3  4
16 medium first  5  5
17 high   second 4  5
18 high   second 4  1
19 low    first  4  4
20 medium second 1  3
21 high   second 4  3
22 medium first  1  3
23 medium second 2  3
24 high   second 3  3
25 medium first  4  3

如果某些列是分類變數,則查詢每列值的正弦值

使用plyr包中的numcolwise函式在資料框df中查詢每列值的正弦值,即使某些列是分類變數:

Level<-sample(c("low","medium","high"),25,replace=TRUE)
Group<-sample(c("first","second"),25,replace=TRUE)
DV1<-sample(1:5,25,replace=TRUE)
DV2<-sample(1:5,25,replace=TRUE)
df<-data.frame(Level,Group,DV1,DV2)
library(plyr)
numcolwise(sin)(df)

輸出

        DV1    DV2
1   0.9092974  0.1411200
2  -0.9589243 -0.7568025
3   0.9092974  0.1411200
4   0.1411200 -0.7568025
5  -0.7568025 -0.7568025
6  -0.7568025  0.8414710
7   0.8414710  0.1411200
8   0.8414710  0.8414710
9   0.1411200 -0.9589243
10 -0.7568025 -0.9589243
11 -0.9589243  0.1411200
12 -0.9589243  0.8414710
13 -0.7568025  0.9092974
14  0.8414710  0.1411200
15  0.8414710 -0.7568025
16  0.1411200  0.8414710
17  0.1411200  0.1411200
18  0.9092974  0.9092974
19  0.9092974  0.1411200
20 -0.9589243  0.8414710
21  0.9092974  0.1411200
22 -0.7568025  0.9092974
23 -0.7568025 -0.9589243
24 -0.7568025  0.9092974
25 -0.7568025  0.1411200

更新於:2021年11月15日

191 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.