假設我在R中有一個列表或數據框,並且我想要獲取行索引,那麼我該怎麼做?也就是說,我想知道某個矩陣包含多少行。如何獲取R中的行索引號?
回答
這不太清楚你到底想要做什麼。
要引用一個數據幀連續使用df[row,]
要得到的東西使用match(item,vector)
,其中向量可能是你的數據幀的一列,如df$cname
如果列向量的第一位置名字是cname。
編輯:
要結合這些你可以這樣寫:
df[match(item,df$cname),]
注意,比賽讓你列表中的第一個項目,所以如果你是不是在找一個唯一的參考號,你可能想考慮別的。
這是一個很好的答案,而不是我相信@ lebesgue的另一個自我提出的問題。如果您鍵入'head(df)',則除了行ID以外的所有列都會有標題。所以我認爲@lebesgue正在尋找一個允許訪問行ID的函數('row'函數)。 – isomorphismes 2012-03-05 04:39:05
我解釋你的問題是關於獲取行號。
- 如果您還沒有設置rownames,您可以嘗試
as.numeric(rownames(df))
。否則使用1:nrow(df)
的序列。 which()
函數將TRUE/FALSE行索引轉換爲行號。
這也是我所做的,因爲DF行的名字,即使它們是數字的,也不一定對應於行索引:'row(cars [34:50,])[,1]; as.integer(rownames(汽車[34:50,]))'。你爲什麼在這裏使用'as.numeric()'?使用'as.integer()'會更有意義嗎? – naught101 2012-08-16 04:51:09
如果我明白你的問題,你只是希望能夠通過行可在數據幀的項目(或清單):
x = matrix(ceiling(9*runif(20)), nrow=5 )
colnames(x) = c("col1", "col2", "col3", "col4")
df = data.frame(x) # create a small data frame
df[1,] # get the first row
df[3,] # get the third row
df[nrow(df),] # get the last row
lf = as.list(df)
lf[[1]] # get first row
lf[[3]] # get third row
等
見row
在?base::row
。這給出了任何類矩陣對象的行索引。
- 1. 如何從elasticsearch中的索引獲取索引id編號
- 2. 如何獲取行索引?
- 3. 如何從Google表格行中獲取列的序號索引?
- 4. 如何從NSCombobox獲取索引號?
- 5. 如何在javafx的gridpane中獲取列索引和行索引
- 6. 按索引獲取表格行號
- 7. 如何獲取特定名稱的行索引號?
- 8. 如何獲取listview的行索引?
- 9. 如何獲取WPF Datagrid的行索引?
- 10. 獲取NSArray索引號
- 11. 如何索引中的R
- 12. 獲取行索引jQuery中
- 13. 獲取行索引
- 14. 獲取R中迭代器的索引(與foreach並行)
- 15. 獲取包含r中特定元素的行索引
- 16. 如何在PHP中獲取密鑰的索引號?
- 17. Python:獲取字符串索引的行號和列號?
- 18. 獲取GridView的行索引
- 19. 獲取行的索引表
- 20. 如何獲取每行中的<ace:dataTable>的行索引?
- 21. 如何獲得Java中的換行索引號?
- 22. 如何獲得UIPICKERVIEW(iOS)中所選行的索引號
- 23. 如何獲取TemplateCollectionView中的索引?
- 24. 如何獲取NSArray中的索引?
- 25. 如何獲取rich:dataTable中某一行的行索引?
- 26. 如何手動獲取獲取(...)索引
- 27. 如何獲取列表索引的向量R
- 28. 獲取數組元素的索引號
- 29. 如何從Excel列信中獲取列號(或索引)
- 30. 如何獲取node.js中由require(id)引發的SyntaxError的行號?
這個問題還是很不清楚的。 – reinierpost 2011-12-14 13:19:17
我認爲這是因爲它有兩個問題:第二句是@BenBolker回答'nrow(x)'(即給出數據框的*維*)。第一句話是關於獲取行號,謝恩回答(並且naught1改進)'as.integer(rownames(x))' – 2013-11-07 19:43:36