【问题标题】:Copy row name from another column in R [duplicate]从R中的另一列复制行名[重复]
【发布时间】:2019-05-26 04:30:06
【问题描述】:

我想删除行号并复制第二列

我想删除行号并复制行名的第二列,但我收到此错误消息(.rowNamesDF<-(x, value = value) 中的错误:'row.names' 长度无效)

df 是 mtcars.csv 的主要数据框 >

 head(df)
                 V1   V2 V3  V4  V5   V6    V7    V8 V9 V10 V11 V12
1         Mazda RX4 21.0  6 160 110 3.90 2.620 16.46  0   1   4   4
2     Mazda RX4 Wag 21.0  6 160 110 3.90 2.875 17.02  0   1   4   4
3        Datsun 710 22.8  4 108  93 3.85 2.320 18.61  1   1   4   1
4    Hornet 4 Drive 21.4  6 258 110 3.08 3.215 19.44  1   0   3   1
5 Hornet Sportabout 18.7  8 360 175 3.15 3.440 17.02  0   0   3   2
6           Valiant 18.1  6 225 105 2.76 3.460 20.22  1   0   3   1

df <- read.csv(paste(getwd(), "/mtcars.csv",sep=""), sep=",", header = FALSE, stringsAsFactors = FALSE)

class(df)
head(df)
dfmpghp <- cbind(df[2],df[5])

head(df)
class(dfmpghp)
rownames(dfmpghp) <- NULL
head(dfmpghp)
colnames(dfmpghp) <- c("mpg","hp")
head(dfmpghp)
rownames(dfmpghp, do.NULL = TRUE, prefix = "row")
rownames(dfmpghp) <- df[1]
head(dfmpghp)

预期结果: >

 head(dfmpghp)
                   mpg  hp
Mazda RX4         21.0 110
Mazda RX4 Wag     21.0 110
Datsun 710        22.8  93
Hornet 4 Drive    21.4 110
Hornet Sportabout 18.7 175
Valiant           18.1 105

实际结果

head(dfmpghp)
   mpg  hp
1 21.0 110
2 21.0 110
3 22.8  93
4 21.4 110
5 18.7 175
6 18.1 105

【问题讨论】:

  • 我终于在 4-5 小时后完成了 :( rownames(dfmpghp)

标签: r


【解决方案1】:

使用

example <- read.csv("Table3.csv",header=T,row.names=2,sep=",")

这将告诉 R row.names 在 df 的第二列中可用

【讨论】:

  • 请编辑答案:1)赋值运算符错误。 2) read.csv 不需要 header = TRUEsep = "," 因为它们已经是默认值。至于重点,row.names = 2,完全正确。但请编辑这个。
  • 哦,感谢您指出,我添加的标题和分隔符只是为了确保 Zo 以所需的格式得到答案
  • 非常感谢,但是,我收到此错误:read.table 中的错误(文件 = 文件,标题 = 标题,sep = sep,引用 = 引用,:重复的 'row.names' 不是允许
  • 首先确保 row.names = NULL
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-07-11
  • 2018-05-15
  • 1970-01-01
  • 2018-10-23
  • 2021-09-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多