R中列值的倒数
我有一个矩阵,叫做R中列值的倒数,r,R,我有一个矩阵,叫做mydf。如何获得结果中所示的A列和C列的倒数 mydf 结果 A B C 0.5 2 0.5 1 3 0.5 我们可以试试 mydf[c(1,3)] <- lapply(mydf[c(1,3)], function(x) 1/x) mydf # A B C #1 0.5 2 0.5 #2 1.0 3 0.5 注意:这里我假设“mydf”为data.frame我们可以试试 mydf[c(1,3)] <- lapply(mydf
mydf
。如何获得结果中所示的A列和C列的倒数
mydf
结果
A B C
0.5 2 0.5
1 3 0.5
我们可以试试
mydf[c(1,3)] <- lapply(mydf[c(1,3)], function(x) 1/x)
mydf
# A B C
#1 0.5 2 0.5
#2 1.0 3 0.5
注意:这里我假设“mydf”为data.frame
我们可以试试
mydf[c(1,3)] <- lapply(mydf[c(1,3)], function(x) 1/x)
mydf
# A B C
#1 0.5 2 0.5
#2 1.0 3 0.5
注意:这里我假设“mydf”为
data.frame
我建议创建一个新的数据框,然后反转需要反转的列
mydf <- data.frame(A=c(2,1), B=c(2,3), C=c(2,2))
mydf2 <- mydf
mydf2[,c(1,3)] <- mydf2[,c(1,3)]^(-1)
mydf2
# A B C
#1 0.5 2 0.5
#2 1.0 3 0.5
mydf我建议创建一个新的数据框,然后反转需要反转的列
mydf <- data.frame(A=c(2,1), B=c(2,3), C=c(2,2))
mydf2 <- mydf
mydf2[,c(1,3)] <- mydf2[,c(1,3)]^(-1)
mydf2
# A B C
#1 0.5 2 0.5
#2 1.0 3 0.5
mydf这也适用于R:
> df <- data.frame(A=c(2,4), B=c(2,5), C=c(2,2))
> df
# A B C
#1 2 2 2
#2 4 5 2
> cols = c('A','B')
> df[cols] = 1/df[cols]
> df
# A B C
#1 0.50 0.5 2
#2 0.25 0.2 2
>测向
#A、B、C
#1 2 2 2
#2 4 5 2
>cols=c('A','B'))
>df[cols]=1/df[cols]
>df
#A、B、C
#1 0.50 0.5 2
#2 0.25 0.2 2
这也适用于R:
> df <- data.frame(A=c(2,4), B=c(2,5), C=c(2,2))
> df
# A B C
#1 2 2 2
#2 4 5 2
> cols = c('A','B')
> df[cols] = 1/df[cols]
> df
# A B C
#1 0.50 0.5 2
#2 0.25 0.2 2
>测向
#A、B、C
#1 2 2 2
#2 4 5 2
>cols=c('A','B'))
>df[cols]=1/df[cols]
>df
#A、B、C
#1 0.50 0.5 2
#2 0.25 0.2 2
mydf[,c(“A”,“c”)]@DavidArenburg没错。应该很简单,但只需要特定的列。mydf[,c(“A”,“c”)]@DavidArenburg没错。应该非常简单,但只需要特定列。指定mydf
必须是data.frame
且不能是矩阵。如果在矩阵
上尝试此操作(如OP所述,尽管有mydf
名称),但结果不会很好…请指定mydf
必须是数据.frame
且不能是矩阵。如果你在矩阵
上尝试这一点(正如OP所说,尽管有mydf
名称),事情不会有好的结局。。。