2024-09-28 05:18:17 发布
网友
我有以下格式的文件: 输入:
Freq Document TermId 3 A 112 5 A 055 1 C 003 4 D 001 2 B 003 1 D 089
我想把这个dataframe转换成一个term文档矩阵(最好是另一个df)。实现这一目标最有效的方法是什么?你知道吗
Ex输出:
Term/Document A B C D 001 0 0 0 4 003 0 2 1 0 055 5 0 0 0 089 0 0 0 1 112 3 0 0 0
注意,所需的DataFrame有一个索引,其标签来自df['TermId'],列标签来自df['Document']。每当索引和列标签来自df的列时,请考虑使用^{}(如果需要聚合,请使用^{}):
df['TermId']
df['Document']
df
import pandas as pd df = pd.DataFrame({'Document': ['A', 'A', 'C', 'D', 'B', 'D'], 'Freq': ['3', '5', '1', '4', '2', '1'], 'TermId': ['112', '055', '003', '001', '003', '089']}) result = df.pivot(index='TermId', columns='Document', values='Freq').fillna(0) print(result)
收益率
Document A B C D TermId 001 0 0 0 4 003 0 2 1 0 055 5 0 0 0 089 0 0 0 1 112 3 0 0 0
注意,所需的DataFrame有一个索引,其标签来自} (如果需要聚合,请使用^{} ):
df['TermId']
,列标签来自df['Document']
。每当索引和列标签来自df
的列时,请考虑使用^{收益率
相关问题 更多 >
编程相关推荐