将dataframe中的列转换为因子错误
我想将Strategy列更改为factor变量,并使用以下内容:将dataframe中的列转换为因子错误,r,dataframe,R,Dataframe,我想将Strategy列更改为factor变量,并使用以下内容: jan17dat[,"Strategy"] <- as.factor(jan17dat[,"Strategy"]) 尝试按如下顺序排列列策略 jan17dat<-jan17dat[order(jan17dat$Strategy)] 这是我的部分数据: Strategy Last trade P&L Age KBand 44939.55 20 boll 845
jan17dat[,"Strategy"] <- as.factor(jan17dat[,"Strategy"])
尝试按如下顺序排列列策略
jan17dat<-jan17dat[order(jan17dat$Strategy)]
这是我的部分数据:
Strategy Last trade P&L Age
KBand 44939.55 20
boll 84550.86 19
te 84550.86 19
RSI 126576.81 130
bh 6321355.26 17363
will 39294.69 17
mae 0 0
ichi -12876.14 26
cmci 76046.52 16
tas 63197.1 11
KBand -33729.9 6
ichi 6698.04 4
MACD 6674.36 5
ad -26684.6 2
will -33332.65 7
boll -33299.6 40
te -33299.6 40
mae 0 0
这两个选项都应该有效,请参见示例:
d1 <- mtcars[, 1:3]
str(d1)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
# $ disp: num 160 160 108 258 360 ...
d1[, "cyl"] <- as.factor(d1[, "cyl"])
str(d1)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : Factor w/ 3 levels "4","6","8": 2 2 1 2 3 2 3 1 1 2 ...
# $ disp: num 160 160 108 258 360 ...
d2 <- mtcars[, 1:3]
str(d2)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
# $ disp: num 160 160 108 258 360 ...
d2$cyl <- as.factor(d2$cyl)
str(d2)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : Factor w/ 3 levels "4","6","8": 2 2 1 2 3 2 3 1 1 2 ...
# $ disp: num 160 160 108 258 360 ...
identical(d1, d2)
# [1] TRUE
d1两个选项都应该有效,请参见示例:
d1 <- mtcars[, 1:3]
str(d1)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
# $ disp: num 160 160 108 258 360 ...
d1[, "cyl"] <- as.factor(d1[, "cyl"])
str(d1)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : Factor w/ 3 levels "4","6","8": 2 2 1 2 3 2 3 1 1 2 ...
# $ disp: num 160 160 108 258 360 ...
d2 <- mtcars[, 1:3]
str(d2)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
# $ disp: num 160 160 108 258 360 ...
d2$cyl <- as.factor(d2$cyl)
str(d2)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : Factor w/ 3 levels "4","6","8": 2 2 1 2 3 2 3 1 1 2 ...
# $ disp: num 160 160 108 258 360 ...
identical(d1, d2)
# [1] TRUE
d1您是否尝试了jan17dat$策略您可以使用dput(jan17dat)
打印数据。然后有人可以重复你的问题。谢谢。按照你的建议去做,效果很好。你知道为什么这比另一个有效吗?你试过jan17dat$策略吗?你可以使用dput(jan17dat)
来打印数据。然后有人可以重复你的问题。谢谢。按照你的建议去做,效果很好。你知道为什么这对另一个有效吗?
d1 <- mtcars[, 1:3]
str(d1)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
# $ disp: num 160 160 108 258 360 ...
d1[, "cyl"] <- as.factor(d1[, "cyl"])
str(d1)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : Factor w/ 3 levels "4","6","8": 2 2 1 2 3 2 3 1 1 2 ...
# $ disp: num 160 160 108 258 360 ...
d2 <- mtcars[, 1:3]
str(d2)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
# $ disp: num 160 160 108 258 360 ...
d2$cyl <- as.factor(d2$cyl)
str(d2)
# 'data.frame': 32 obs. of 3 variables:
# $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# $ cyl : Factor w/ 3 levels "4","6","8": 2 2 1 2 3 2 3 1 1 2 ...
# $ disp: num 160 160 108 258 360 ...
identical(d1, d2)
# [1] TRUE