我正试图重塑下面的数据集df
,以将values
列表显示为列标题,并将它们显示为值的频率(所需的输出显示在底部)。TBH对于如何前进我有点困惑;我应该创建一个具有适当行和列的数据帧,然后尝试通过lambda函数进行填充吗
keys = ["panda1", "panda2", "panda3"]
values = [["eats", "shoots"], ["shoots", "leaves"], ["eats", "leaves"]]
df = pd.DataFrame({"keys": keys, "values": values})
df
keys values
0 panda1 [eats, shoots]
1 panda2 [shoots, leaves]
2 panda3 [eats, leaves]
有人对前进的最佳方式有任何指导吗?不必编写示例代码,只需编写下一步需要做什么的逻辑
期望输出:
keys eats shoots leaves total
0 panda1 1 1 0 2
1 panda2 0 1 1 2
2 panda3 1 0 1 2
还有一种方法:
尝试^{} +^{} 加上页边+^{} 以去除底部页边:
new_df
:您可以使用
get_dummies
和explode
获取值计数,然后使用sum
创建总数相关问题 更多 >
编程相关推荐