我有一个包含 3 列的 pandas 表:parent_male、parent_female、offsprings - 所有字符串。 我想创建一个简单的稀疏交叉表,将男性与女性和后代作为值 - 我怎么能写一个这样做的 aggfunc。 (不需要真正的聚合)- 只需在空白处放置一个空字符串。
最佳答案
IIUC 你需要pivot
:
df = df.pivot(index='parent_male', columns='parent_female', values='offsprings')
如果报错:
ValueError: Index contains duplicate entries, cannot reshape
所以最终的解决方案是:
ct = pd.pivot_table(d['male'], d['female'], d['offsprings'], aggfunc=','.join)
关于python - Pandas 如何在没有聚合的情况下创建简单的交叉表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40327503/