簡體   English   中英

R:為大型數據集編號級別並分配給新列

[英]R: Number levels and assign to new column, for a big dataset

所以這是一個快速的問題。
我有一個面板數據的數據框,其中每個人都有一列標識/名稱/ ID。 可以說此列有n個級別,即在特定時間范圍內面板中的n個個體。
我想使用此值n向數據框添加列N,即級別的編號。
也就是說,為每個ID /名稱/級別分配了一個從1到n的數字。 這是執行我想要的代碼:

i = 1
for(l in levels(data$IDs))  {
data[data$ID == l,]$N = i
i = i+ 1
}

到現在為止還挺好。 問題:我的數據集很大。 很大。 手動執行此操作太多了。 並且上述操作花費太多時間。 這是一個循環,所以我猜測是使用向量運算在R中有一種更快的方法。 有人知道一種計算快速的方法嗎?

只需使用data$N <- as.integer(data$ID) 因子變量在內部是整數。 因此,很容易將它們轉換為整數變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM