python - Pandas:从交叉表到计数表
问题描述
我有一张由 0 和 1 生成的表pd.crosstab()
行是食谱,列是成分。例如,我们可以有:
banana mushrooms ... chocolate tuna
banana-split 1 0 ... 1 0
我想将它转换为一个表格,其中列和行都是成分,并且T[i,j]
= #number of recipes that have both ingredients, i
andj
在我们的示例中,T[banana, chocolate] = 1
并且T[banana, tuna] = 0
怎么做?
解决方案
你可以做矩阵乘法:
df.T @ df
推荐阅读
- python - 如何将值插入 SQLAlchemy TIMESTAMP 列
- websphere-liberty - 我缺少 wlp-kernel 2019.3.0.0
- python-3.x - 编号的工作日:找到第 k 个整数
- c# - 在解析具有 anyOf 属性下的多个引用的 json 模式时,输出中仅返回一个引用(最后一个)
- javascript - 使用 Jasmine 对过滤器组件进行单元测试
- jquery - 在href jquery中使用不同域的目标空白
- c# - 如何从类库项目和预编译视图创建 NuGet 包?
- excel - 如何从逗号分隔的单元格中查找多个值并在 excel 中平均结果?
- android - 不使用 volley 无法触发 mysql 查询
- python - 使用补丁模拟 pyarrow.parquet