小编Deb*_*Deb的帖子

使用python将一列转换为多行

我有一个包含 3 列的数据集“df”。

>> Original Data

    Student Id    Name  Marks
0       id_1    John    112
1       id_2    Rafs    181
2       id_2    Rafs    182
3       id_2    Rafs    183
4       id_3    Juan    222
5       id_3    Juan    312
6       id_3  Roller     21

Run Code Online (Sandbox Code Playgroud)

试图保持列 'Student_Id' 和 'Name' 不变,但将 'Marks' 转换为多列。这样每个唯一的“Student_Id”和“Name”都将有一行所有可能的标记。此外,我们不需要手动创建列,但应根据值动态创建列。

>> Expected Output

    Student Id    Name  Marks1  Marks2  Marks3
0       id_1    John     112    <NA>    <NA>
1       id_2    Rafs     181     182     183
2       id_3    Juan     222     312    <NA>
3       id_3  Roller      21    <NA>    <NA> …
Run Code Online (Sandbox Code Playgroud)

python pandas

4
推荐指数
1
解决办法
74
查看次数

如何绑定一个数据表和一个向量

我想将data.table和vector绑定在一起,以使矢量内容成为data.table的新列(零值)。

DT <- data.table(x=c("A", "B", "C", "D", "E", "F"), y = rnorm(6))

DT2 <- c("paper11grid1", "paper12grid1", "paper13grid1")

Run Code Online (Sandbox Code Playgroud)

我想将DT2的内容更新为DT的新列名

 x          y     paper11grid1 paper12grid1 paper13grid1

 A  0.9643131           0   0   0

 B -0.8856350           0   0   0

 C -0.1489705           0   0   0

 D  2.0675105           0   0   0

 E -1.2965938           0   0   0

 F -0.8468514           0   0   0
Run Code Online (Sandbox Code Playgroud)

直接进行绑定只会将DT2添加为一个列

cbind(DT, DT2)
Run Code Online (Sandbox Code Playgroud)

r data.table

2
推荐指数
1
解决办法
63
查看次数

从两个数据集中创建唯一列名称的组合,而无需循环

我有两个向量:

a <- c(1,2,3)
b <- c(11,12,13)
Run Code Online (Sandbox Code Playgroud)

我想创建列名称(3 * 3 = 9)的组合,以便它们使用来自两个名称的值:

paper1grid11 
paper1grid12
paper1grid13
paper2grid11
paper2grid12
paper2grid13
paper3grid11
paper3grid12
paper3grid13
Run Code Online (Sandbox Code Playgroud)

我试过使用paste0命令,但没有组合。而是只创建3个列名。

paste0("paper", a,"grid", b)
Run Code Online (Sandbox Code Playgroud)

我不想使用for循环

r data.table

0
推荐指数
1
解决办法
58
查看次数

标签 统计

data.table ×2

r ×2

pandas ×1

python ×1