我正在寻找一种方法,使用pandas和python将excel表中的几个列与已知的列名组合成一个新的、单一的列,并保留所有重要信息,如下面的示例所示:
输入:
ID,tp_c,tp_b,tp_p
0,transportation - cars,transportation - boats,transportation - planes
1,checked,-,-
2,-,checked,-
3,checked,checked,-
4,-,checked,checked
5,checked,checked,checked
期望输出:
^{pr2}$ID为0的行包含列内容的说明。理想情况下,代码将解析第二行中的描述,查找“-”,并将这些值连接到新的“tp\u all”列中。在
这很有趣,因为它是一个反面
get_dummies
。。。在我想我应该手动修改列名,这样您就有了一个布尔数据帧:
现在可以使用apply with zip:
^{pr2}$现在您只需调整标题,以获得所需的csv。在
如果有一个更少的手动方式/更快的反向操作
get_dummies
。。。好吧,一个更动态的方法:
有一种方法:
然后:
^{pr2}$您可以使用此列创建一个新的数据帧,也可以对其执行任何操作。在
编辑:我看到你已经编辑了你的问题,这样运输方式的名称现在在第0行而不是列标题中。如果它们在列标题中(正如我的回答所假设的那样),并且您的新列标题似乎不包含任何其他有用的信息,那么您可能应该从将列名设置为第0行的信息开始,然后删除第0行。在
相关问题 更多 >
编程相关推荐