如何在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   IV   45   19
2  III   37    5
3  IV    21   27
4  III   16   26
5  III   34   48
6   I     3   11
7  II    49   10
8   I    24    8
9   I    26   25
10  II   20   49
11  I    29   29
12  II    8   12
13  I     7   31
14 III   44   38
15 III    2   20
16 III   23   37
17  I    15   15
18  I    42   45
19  I    11   47
20 IV     6   40
21 II    41    3
22 II    48   14
23 III   31   24
24 IV    13   17
25 II     5   41

查詢某些列為分類變數時的列最小值

使用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(min)(df1)

輸出

  Num1 Num2
1   2   3

示例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  Third        8     1
2  First        8     1
3  Second       8     3
4  Second       8     2
5  Third        1     1
6  Second       1     1
7  First        5     3
8  Third        5     3
9  First        4     1
10 Second       6     3
11 Third        6     3
12 Third        2     4
13 Second       7     4
14 First        5     3
15 Second       1     4
16 Third        1     5
17 Third        7     4
18 Third       10     4
19 Third        1     3
20 Second       4     3
21 Second       3     1
22 Second      10     4
23 First        3     5
24 First        1     4
25 Second       6     4

查詢某些列為分類變數時的列最小值

使用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(min)(df2)

輸出

  Score Price
1   1    1

更新於:2021年11月9日

83 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.