如何使用Python pandas将数据表转换为指定目标结构
解答
完全可以使用pandas实现这个表结构转换,这个操作本质是对Label列做独热编码后和原Text列重组,实现步骤如下。
实现代码
首先确保已经安装pandas库,之后按如下代码操作即可:
import pandas as pd # 1. 读取/构造原始数据表(如果数据已经从csv/excel读入为DataFrame可跳过这步) df = pd.DataFrame({ 'Label': ['True', 'True', 'Fake', 'True'], 'Text': ['Car', 'Pool', 'Play', 'Music'] }) # 2. 执行结构转换 # 对Label列生成独热编码,和Text列拼接后调整为目标列顺序 df_result = pd.concat( [df['Text'], pd.get_dummies(df['Label']).astype(int)], axis=1 )[['Text', 'True', 'Fake']] # 打印查看结果 print(df_result)
输出结果
运行代码后会得到和目标结构完全一致的表:
Text True Fake 0 Car 1 0 1 Pool 1 0 2 Play 0 1 3 Music 1 0
兼容重复数据的可选方案
如果你的数据中存在同一个Text对应多条重复标签的场景,可以用透视表方法实现,兼容聚合统计需求:
df_result = df.assign(flag=1)\ .pivot_table(index='Text', columns='Label', values='flag', fill_value=0, aggfunc='sum')\ .reset_index()[['Text', 'True', 'Fake']]
内容的提问来源于stack exchange,提问作者AccelUp
相关产品推荐
相关产品推荐

