我想从CSV文件中创建一个矩阵。
以下是我尝试的内容:
df = pd.read_csv('csv-path', usecols=[0,1], names=['A', 'B'])
pd.pivot_table(df,columns='A', values='B')
输出:[9197337 rows x 2 columns]
。
我想减少行数,比如我想制作前100个条目或1000个矩阵。我该怎么做?
答案 0 :(得分:0)
由于csv
模块仅处理完整文件,因此在使用之前最简单地提取感兴趣的行。您可以在使用Unix head
实用程序运行程序之前执行此操作。这是在Python中应该运行的一种方式:
with open("csv-path") as inf, open("mod_csv_path", "w") as outf:
for i in range(1000):
outf.write(inf.readline())
显然你会读“mod_csv_path”而不是“csv-path”作为输入文件。
答案 1 :(得分:0)
熊猫似乎是正确的做法?您能否提供CSV文件样本。
此外,使用pandas,您可以限制数据框的大小:
limited_df = df.head(num_elements)