我有三列要放入一个数据框中,也要将其放入一列中。我已经用唯一的ID对每一列进行了签名,我想要的结果是两列,一列是列ID,另一列是这三个列值。以下是我的原始数据:
所以我想要的结果如下:
1 value
2 value
3 value
1 value
2 value
3 value
所以我所做的是:
for (i in 1:nrow(cancer))
+ for (j in 1:ncol(cancer)){
+
+ dtypeID=datatype$dtypeID[datatype$dtype %in% names(cancer)[j]]
+ if (n
我有一个数据表,它看起来像
Group 1 Group 2 Group 3 Label
3 5 6 red
4 2 8 green
7 3 2 blue
我希望将标签列中的值、标头和值放入列中,这样数据看起来就像
3 red group 1
5 red group 2
6 red group 3
4 green group 1
2 green group 2
8 gr
在遵循哈德利韦翰的例子在第2.4节,铸造熔融数据,我得到了Error: could not find function "cast"。我已经安装并加载了reshape2包。
> cast(msmithsm, time + subject ~ variable)
Error: could not find function "cast"
我有一张桌子如下。
A B C
14.29 20.06 20.04
19.10 20.64 26.23
19.09 18.00 22.74
16.25 19.56 22.04
15.09 19.47 23.37
16.61 19.07 25.02
19.63 18.38 23.27
但我想把桌子旋转一下,就像。
group time
A 15.5
A 16.5
A 12.3
A 15.6
B 14.2
B 13.5
B 11.2
C 11.5
C 11.2
C 1
我在选角时遇到了麻烦。我想要物种(使用newname)在main_habitat和muncipality (munc)上的频率,main_habitat和newname在行中,所有munc中,相应的频率在列中:
main_haitat newname munc1 munc2 munc3
A X 1 1 0
A Y 0 1 1
B Y ...
B Z ...
...
这方面的任何帮助都
我一直收到这样的消息:“对象被屏蔽'package:data.table':dcast,melt”"Error: id variables not found in data: b“。我尝试使用::方法,并希望它能工作,但它不能。还有其他的解决方案吗?感谢您的任何意见!谢谢! library(reshape2)
mdat <- reshape2::melt (data2, id = 'b')
head(mdat)
reshape2的文档给出了关于dcast的子集属性的以下细节:
子集引号表达式,用于重构之前的子集数据,例如子集= .(variable=="length")。
但是,试图使用此语法会导致以下错误:
Error in cast(data, formula, fun.aggregate, ..., subset = subset, fill = fill, :
could not find function "."
如何构造用于dcast子集的“引号表达式”?
在R中从Google文件中提取的数据中,有许多列要转换为多个列,存储数据的数据名为 data 。
现在,让我们从R中提取的具有头值和前4个值的数据中的以下列开始:
Data$Param1
-----------
Private Bus, Private Car, Public Bus
Private Car, Private Van, Public Bus
Private Car
Private Bus, Private Car
从上面的列中,我们有四(4)组值,即:
专用公共汽车
私家车
列兵范
公共汽车
如何将列 Data$Param1 1转换为我前面提到的4个值集
我的数据,D是这样的。
D$fit有距离(0:6)和dg (1:3)信息
D <- read.table(header = TRUE, text = "
distance dg fit
1 0 1 A
2 1 1 B
3 2 1 C
4 3 1 D
5 4 1 E
6 5 1 F
7 6 1 G
8 0 2 H
9 1 2 I
10 2 2 J
11 3 2
df <- data.frame(x=c(1,2,1,2,3,3), y = c(letters[1:5],'a'), val = c(1:5, 9))
print(df)
x y val
1 a 1
2 b 2
1 c 3
2 d 4
3 e 5
3 a 9
我想创建一个函数fun(df, rowname, colname, valname),它接受数据帧、行名、列名称和值输入,并返回一个包含行名、列名和值的data.frame或矩阵,如下所示
fun(df, "x","y","
我想将R data.frame转换为matrix,其中包含两个因素,如矩阵的行名和列名。这是一辆MWE。要获得所需的结果,需要大量的代码,并且为此目的可能会有更紧凑的代码。
set.seed(12345)
A <- c("A1", "A2")
B <- c("B1", "B2", "B3")
Y <- runif(n=6, min=100, max=1000)
df <- data.frame(expand.grid(A=A, B=B), Y)
df
# A B Y