HOWTO · R

在 R 中查詢行號

本教程演示如何在 R 中查詢值的行號。

本頁內容

which() 方法用於在 R 中查詢資料框的值的行號。本教程演示如何使用 which() 方法在 R 中查詢行號。

在 R 中查詢行號

which() 方法檢索 R 中值的行號並返回行號。如果不是這樣,則返回整數 0。

語法:

which (dataframe$coloumnname == value)

此方法將值作為給定引數,在資料框和列名之間用 $ 符號引用。which() 方法用於檢索行號,該行號對應於資料框中特定表示式的 true 條件。

程式碼示例:

#create a dataframe
Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                         LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                         Id=c(101, 102, 103, 104, 105),
                         Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))
print ("The Original DataFrame:")

print(Delftstack)

print("DataFrame Row Number Where Designation value is Senior Dev: ")

# get the row number
which(Delftstack$Designation == "Senior Dev")

上面的程式碼將從資料框的 Designation 列中找到值 Senior Dev 的行號。

輸出:

[1] "The Original DataFrame:"
      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

[1] "DataFrame Row Number Where Designation value is Senior Dev"
[1] 3

我們還可以使用 rownames() 方法為行分配名稱。此方法採用等於資料框中行數的向量。

我們可以將此方法傳遞給 which 方法來查詢特定值的行號。

程式碼示例:

# create a dataframe
DelftstackNew <- data.frame(Column1 = 1:20,
                            Column2 = 20:1,
                            Column3 = 9)
# Get the rows of dataframe
numberofrows <- nrow(DelftstackNew)

rownames(DelftstackNew) <- LETTERS[1:numberofrows]
print ("The Original DataFrame: ")

print(DelftstackNew)

print("DataFrame Row Number Where value is S:")

# get R value in column
which(rownames(DelftstackNew)=="S")

上面的程式碼將找到值 S 的行號。

輸出:

[1] "The Original DataFrame: "
  Column1 Column2 Column3
A       1      20       9
B       2      19       9
C       3      18       9
D       4      17       9
E       5      16       9
F       6      15       9
G       7      14       9
H       8      13       9
I       9      12       9
J      10      11       9
K      11      10       9
L      12       9       9
M      13       8       9
N      14       7       9
O      15       6       9
P      16       5       9
Q      17       4       9
R      18       3       9
S      19       2       9
T      20       1       9
>

[1] "DataFrame Row Number Where value is S:"
[1] 19