我正在try 用Python转换数据帧--如果Pandas或NumPy可以完成工作,我很乐意使用它

原始数据帧如下所示

A        B        D     E 
foo-1    bar-6    C1    11
foo-2    bar-5    C2    12
foo-3    bar-4    C1    13
foo-4    bar-3    C1    14
foo-5    bar-2    C2    15
foo-6    bar-1    C2    16

我试着把它变成这样

A        B        C1    C2
foo-1    bar-6    11    NAN
foo-2    bar-5    NAN   12
foo-3    bar-4    13    NAN
foo-4    bar-3    14    NAN
foo-5    bar-2    NAN   15
foo-6    bar-1    NAN   16

否则我会放弃D&A;E

A        B        D    E    C1    C2
foo-1    bar-6    C1   11   11    NAN
foo-2    bar-5    C2   12   NAN   12
foo-3    bar-4    C1   13   13    NAN
foo-4    bar-3    C1   14   14    NAN
foo-5    bar-2    C2   15   NAN   15
foo-6    bar-1    C2   16   NAN   16

我试过这个


for row in dataframe.index:
dataframe\[dataframe\[D\]\] = dataframe\[E\]

但我得到了错误的结果

推荐答案

try 旋转原始数据帧的一部分,然后将其连接回来:

out = df.join(pd.pivot(df[['D', 'E']], columns='D', values='E'))
print(out)

打印:

       A      B   D   E    C1    C2
0  foo-1  bar-6  C1  11  11.0   NaN
1  foo-2  bar-5  C2  12   NaN  12.0
2  foo-3  bar-4  C1  13  13.0   NaN
3  foo-4  bar-3  C1  14  14.0   NaN
4  foo-5  bar-2  C2  15   NaN  15.0
5  foo-6  bar-1  C2  16   NaN  16.0

Python相关问答推荐

try 从网站获取表(ValueRight:如果使用所有纯量值,则必须传递索引)

如何从不同长度的HTML表格中抓取准确的字段?

如何将uint 16表示为float 16

从Python调用GMP C函数时的分段错误和内存泄漏

从今天起的future 12个月内使用Python迭代

pandas DataFrame GroupBy.diff函数的意外输出

TARete错误:类型对象任务没有属性模型'

根据不同列的值在收件箱中移动数据

_repr_html_实现自定义__getattr_时未显示

' osmnx.shortest_track '返回有效源 node 和目标 node 的'无'

将9个3x3矩阵按特定顺序排列成9x9矩阵

使用Python更新字典中的值

在pandas中使用group_by,但有条件

如何在表中添加重复的列?

python中的解释会在后台调用函数吗?

名为__main__. py的Python模块在导入时不运行'

如何在FastAPI中为我上传的json文件提供索引ID?

使用特定值作为引用替换数据框行上的值

Python Tkinter为特定样式调整所有ttkbootstrap或ttk Button填充的大小,适用于所有主题

下三角形掩码与seaborn clustermap bug