2017-06-05 89 views
0

如何將一個原始數據幀轉換爲第一個原始數據,我希望原始數據是第一個原始數據。在R.如何將一行數據框移到第一行?

Sepal.Length Sepal.Width Petal.Length Petal.Width Species 

5.1   3.5   1.4   0.2   setosa 
4.9   3.0   1.4   0.2   setosa 
4.7   3.2   1.3   0.2   setosa 
4.6   3.1   1.5   0.2   setosa 
5.0   3.6   1.4   0.2   setosa 
id   A   B   C   D 
+0

什麼是期望的輸出?你想要問題的行是頭? –

+0

是的,我想成爲標題 –

+0

對於給定的csv,你可以'data.table :: fread(「given.csv」,skip = N)'其中N是要跳過的所需行數 – amonk

回答

0

你可以做以下(假設你的ID是第N行):

df <- iris # Example of data.frame 
myIdrow <- 5 # as an example id row 
df2 <- df[c(myIdrow, (1:nrow(df))[-myIdrow]), ] 

雖然我會建議有ID作爲列名。

+0

我想要id raw be生頭 –

1

我們可以使用grepl來創建基於「Sepal.Length」的「身份證」的邏輯向量,然後通過提取該行同時從原始數據集移除該行設定的數據集的列名

i1 <- grepl("id", df1$Sepal.Length) 
setNames(df1[!i1,], unlist(df1[i1,])) 
# id A B C  D 
#1 5.1 3.5 1.4 0.2 setosa 
#2 4.9 3.0 1.4 0.2 setosa 
#3 4.7 3.2 1.3 0.2 setosa 
#4 4.6 3.1 1.5 0.2 setosa 
#5 5.0 3.6 1.4 0.2 setosa 
+0

我做到了,但所有元素都轉換爲NA!怎麼了! –

+0

@AgriiEnginee請檢查您的數據的'str'。我認爲它是所有'字符類 – akrun

+0

它dosnt工作! str是因子 –

相關問題