Python 将行程聚合到流网络数据帧中

Python 将行程聚合到流网络数据帧中,python,pandas,dataframe,Python,Pandas,Dataframe,所以,我只是在学习Python,我遇到了一个小问题, 我正在研究一个数据集,其中包含欧洲447个地区,以及(在清理数据后)这些地区之间大约200000次不同货运量的货运旅行 我需要根据这些数据构造两个矩阵 1) 区域之间的累计行程(可能为每种模式) 2) 国与国之间的总行程(因此不包括国内运输) 行程数据示例: From To Mode Volume_ton 1 2 1 371246 7 423 2 10587

所以,我只是在学习Python,我遇到了一个小问题, 我正在研究一个数据集,其中包含欧洲447个地区,以及(在清理数据后)这些地区之间大约200000次不同货运量的货运旅行

我需要根据这些数据构造两个矩阵

1) 区域之间的累计行程(可能为每种模式)

2) 国与国之间的总行程(因此不包括国内运输)

行程数据示例:

 From   To  Mode    Volume_ton
     1      2     1      371246
     7      423   2      10587
     245   123    1      6841
(因此往返:447个地区,模式:公路=1铁路=2

我如何使用From和To“坐标”来构建一个新的数据帧,该数据帧以以下形式将同一组合中的所有行程相加:

#   0   1    2    3    4    5    6    ...
0
1
2
3
4
...
其中,行是起点,列是目的地

下一个问题是如何将这些数据汇总成国家间矩阵。
这些数字确实附带了代码,我已经构建了一个字典。

如果没有更具重现性的示例数据帧,很难说清楚。但我会这样做:

totals = (
    pandas.groupby(by=['To', 'From'])['Volume_ton']
        .sum()
        .unstack(level='From')
)

如果没有更具重现性的示例数据帧,很难确定。但我会这样做:

totals = (
    pandas.groupby(by=['To', 'From'])['Volume_ton']
        .sum()
        .unstack(level='From')
)

你好,保罗,谢谢你的回复。我试着把这段代码放在:df_freg_road=df_flow_road.groupby(['To','From']['Volume\u ton'].sum().unstack(level='From'))中,但它给了我以下错误:类型错误:列表索引必须是整数或切片,不知道如何修复吗?@Aguywhostudieslogistics“如果没有更具可复制性的示例数据框,很难说清楚”@Aguywhostudieslogistics请参阅pandas wiki的“提问”部分Hi Paul,谢谢你的回答。我尝试将此代码放入:df_freg_road=df_flow_road.groupby(['to','From']['Volume_ton'].sum().unstack(level='From'))但它给了我以下错误:TypeError:列表索引必须是整数或切片,不知道如何修复?@AguyHostudiesLogistics“如果没有更具可复制性的示例数据框,很难确定”@AguyHostudiesLogistics请参阅pandas wiki中的“提问”部分