如何在 R 資料框中查詢每列的值的對數(log10),其中某些列是分類變數?


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

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

  • 然後,使用 plyr 包中的 numcolwise 函式,如果某些列是分類變數,則查詢 log10。

示例

建立資料框

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

Level<-sample(c("low","medium","high"),25,replace=TRUE)
Group<-sample(c("first","second"),25,replace=TRUE)
Score<-sample(1:50,25)
Demand<-sample(1:100,25)
df<-data.frame(Level,Group,Score,Demand)
df

輸出

執行上述指令碼後,將生成以下輸出(此輸出由於隨機化而在您的系統上會有所不同):

   Level  Group   Score Demand
1  low    second  30      9
2  high   first   42     48
3  medium first   14     88
4  high   second  27     63
5  high   first   37     97
6  medium first   38     39
7  high   second  13     18
8  high   first   16     14
9  low    second  40     90
10 medium first   25     53
11 low    second  48     78
12 high   second  28     64
13 low    first   22     32
14 medium first    1     31
15 high   first    2     21
16 low    second  17     26
17 high   first    5     41
18 medium first   49     85
19 low    second  45     29
20 low    first    9     49
21 medium first   31     44
22 medium first   29     46
23 high   second  10     36
24 low    second  21     33
25 low    second  35     40

如果某些列是分類變數,則查詢 log10

使用 plyr 包中的 numcolwise 函式查詢資料框 df 中每個數值列的值的 log10:

Level<-sample(c("low","medium","high"),25,replace=TRUE)
Group<-sample(c("first","second"),25,replace=TRUE)
Score<-sample(1:50,25)
Demand<-sample(1:100,25)
df<-data.frame(Level,Group,Score,Demand)
library(plyr)
numcolwise(log10)(df)

輸出

     Score     Demand
1  1.2552725 1.851258
2  1.3424227 1.477121
3  1.6334685 1.041393
4  1.6020600 1.986772
5  1.6532125 1.944483
6  1.5910646 1.934498
7  1.5440680 1.897627
8  1.2787536 1.977724
9  1.4913617 1.857332
10 1.5051500 0.602060
11 1.5682017 1.505150
12 1.3979400 1.230449
13 0.8450980 1.681241
14 0.6989700 1.748188
15 1.6720979 0.903090
16 1.4623980 1.863323
17 1.0000000 1.799341
18 1.1139434 1.380211
19 1.5563025 1.982271
20 0.9542425 0.698970
21 0.7781513 1.633468
22 1.0413927 1.707570
23 1.5797836 1.792392
24 1.6901961 1.556303
25 1.6989700 1.806180

更新於: 2021 年 11 月 10 日

134 次檢視

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.