如何将R中的特定行向右移动
我尝试将CSV加载到R中。我无法修改CSV,因为它是一个系统文件 下面是我正在处理的CSV的几行。我想将第1行向右移动,因为CSV中的列标题不正确,之后我必须删除空列 下面是一些我的如何将R中的特定行向右移动,r,csv,dataframe,R,Csv,Dataframe,我尝试将CSV加载到R中。我无法修改CSV,因为它是一个系统文件 下面是我正在处理的CSV的几行。我想将第1行向右移动,因为CSV中的列标题不正确,之后我必须删除空列 下面是一些我的data.frame行 V1 V2 V3 V4 V5 V6 V7 V8 V9 1 NA Cy1 NA Cy2 NA Cy3 NA Cy4 NA 2 A1 NA NA NA NA NA NA NA NA 3 A2 NA 94 NA 25 NA 11
data.frame
行
V1 V2 V3 V4 V5 V6 V7 V8 V9
1 NA Cy1 NA Cy2 NA Cy3 NA Cy4 NA
2 A1 NA NA NA NA NA NA NA NA
3 A2 NA 94 NA 25 NA 11 NA 119
4 A3 NA 94 NA 25 NA 13 NA 198
5 B1 NA 94 NA 32 NA 113 NA 129
6 B2 NA 100 NA 95 NA 102 NA 12
7 B3 NA NA NA NA NA NA NA NA
8 B4 NA 120 NA 14 NA 110 NA 25
9 C2 NA 119 NA 11 NA 40 NA 25
10 C3 NA 198 NA 13 NA 45 NA 32
在这里我试着做一些事情,比如
V1 V3 V5 V7 V9
1 NA Cy1 Cy2 Cy3 Cy4
2 A1 NA NA NA NA
3 A2 94 25 11 119
4 A3 94 25 13 198
5 B1 94 32 113 129
6 B2 100 95 102 12
7 B3 NA NA NA NA
8 B4 120 14 110 25
9 C2 119 11 40 25
10 C3 198 13 45 32
如您所见,我必须将第一行data.frame
移到它的右侧
,然后删除'NA'列
有人能帮我吗。提前谢谢
谢谢,
KC更新:
V1 <- c(NA, "A1", "A2")
V2 <- c("Cy1", NA, NA)
V3 <- c(NA, NA, 94)
V4 <- c("Cy2", NA, NA)
V5 <- c(NA, NA, 25)
V6 <- c("Cy3", NA, NA)
df <- data.frame(V1,V2,V3,V4,V5,V6)
df
cols <- c(5,3)
df
for (j in cols) {
df[1,j] <- paste(df[1,j-1])
}
df
for (j in cols) {
df[ ,j-1] <- NULL
}
df
V1高。我只使用了read.csv
函数。和A1、A2,…
不是行名称,而是单元格值。而且,Cy1、Cy2、
也不是列名。我想改变任何一行。我选择了那一行。@user3444971我更新了答案,检查是否有用谢谢你的帮助。我得到下面的错误,同时做同样的事情>dim(y.new)[1]42 9>>cols>for(j in cols){+y.new[1,j]很抱歉我的编辑不好。我试图将注释格式化好,但无法这样做。正如我所说的,您需要指定要在对象cols
中按降序保留其编号的列。cols