python - 基于 CSV 创建二维数组

标签 python arrays pandas numpy matrix

我有一个包含数百万行的 CSV 文件,格式如下:

start, finish,count;
101,101,10;
101,103,2;
101,104,8;
102,103,5;

因此,我们有一个起始位置、一个结束位置以及完成该旅程的人数。

我想做的是将其放入一个“表格式”矩阵中,所有起始位置都沿着顶部运行,所有结束位置沿着侧面运行,并且在矩阵主体中的总和为位于该相交处的所有计数。

到目前为止,我已经清理和导入了 CSV 文件,并将开始和结束位置存储为向量,但是我不确定在形成矩阵主体时如何继续,有人可以帮忙吗?

谢谢。

编辑:我希望它看起来如下:

    101,102;
101,10,0;
103,2,5;
104,8,0;

最佳答案

使用set_indexunstack

df.set_index(['start', 'finish'])['count'].unstack(0)

enter image description here


保存到 csv

print df.set_index(['start', 'finish'])['count'].unstack(0).rename_axis(None) \
    .to_csv('myfilename.csv')

,101,102
101,10.0,
103,2.0,5.0
104,8.0,

关于python - 基于 CSV 创建二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38767866/

相关文章:

python - 对 int overflow(?) python 列表求和

JavaScript 从数组中删除对象并返回它

javascript - 如何在Vue js中做一个无限滚动,动态渲染一个列表(只可见)

python - 无法使用 Pandas Python 访问 excel 文件

python - 使用 pandas 读取 csv 时设置列类型

python - applymap() 不适用于 Pandas MultiIndex Slice

python - 如何在Python中使用configobj保留引号字符串

python - Python 中的切片操作危险吗?

python - 使用 matplotlib 在图像文件上绘制半透明轮廓图

javascript - 将参数添加到函数以仅在值与数组中的名称匹配时执行