avatar
m*a
1
matrix "m"
x y
1 1 A
2 2 A
3 3 B
4 4 B
5 5 C
6 6 C
做这样的计算
y=="A" x*10
y=="B x*100
y=="C" x*1000
有好的方法吗?我用了二种土办法
m[m$y=="A","x"]m[m$y=="B","x"]m[m$y=="C","x"]或
patternhasmapfor (i in (1:length(pattern))){
m[m$y==pattern[i],"x"]}
有可以用apply, tapply的吗?
avatar
f*8
2
How about
m$x * (c(A=10, B=100, C=1000)[m$y])

【在 m*********a 的大作中提到】
: matrix "m"
: x y
: 1 1 A
: 2 2 A
: 3 3 B
: 4 4 B
: 5 5 C
: 6 6 C
: 做这样的计算
: y=="A" x*10

avatar
m*a
3
这个是咋样的语法,我几乎看不懂

【在 f***8 的大作中提到】
: How about
: m$x * (c(A=10, B=100, C=1000)[m$y])

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。