【发布时间】:2018-05-05 21:24:09
【问题描述】:
我有 DataFrame df,其中包含 x 轴、y 轴和填充 numpy 矩阵 mat 的值的信息。
较小的df 示例:
y x x x x value value value value
1 6 3 6 4 100 10 300 15
1 6 2 8 7 50 200 35 70
5 7 5 4 6 2 50 40 400
7 5 3 2 1 105 80 35 44
我想用每个y 填充mat = np.zeros(shape=(10,10)) 是行索引,x 是列索引,其值与值块中的x 位于同一位置。比如
col=1, row=6, value=100 ###
col=1, row=3, value=10
col=1, row=6, value=300 ###
col=1, row=4, value=10
col=1, row=6, value=50 ###
如果有多个值进入该位置(例如###),请进行平均。有什么方法可以直接从 Pandas 到矩阵(或其他快捷方式)?
我现在可以做的是首先使用数据框中选定列的np.ravel 来制作一维数组并从这些数组中填充,但它很慢而且很多冗余。
【问题讨论】:
-
x的列数是否固定且已知? -
@R.S.NikhilKrishna 是的
标签: python python-2.7 pandas numpy