2016-07-29 74 views
0

我有一个n x m的熊猫数据框和一个长度为g的熊猫系列。我怎样才能根据索引来分割数据框?熊猫将df n x m除以系列长度g索引

到目前为止,我一直在将该系列与数据框合并,并简单地将一个单元格与另一个单元格分开。

感谢

+1

你可以发布一个代表例如,它真的取决于,例如,如果长度不匹配,那么它将失败 – EdChum

回答

0

IIUC如果Series长度是一样的df使用div长度:

df = pd.DataFrame({'A':[1,2,3], 
        'B':[4,5,6], 
        'C':[7,8,9], 
        'D':[1,3,5], 
        'E':[5,3,6], 
        'F':[7,4,3]}) 

print (df) 
    A B C D E F 
0 1 4 7 1 5 7 
1 2 5 8 3 3 4 
2 3 6 9 5 6 3 

s = pd.Series([1,2,3]) 
print (s) 
0 1 
1 2 
2 3 
dtype: int6 

print (df.div(s, axis=0)) 
    A B C   D E F 
0 1.0 4.0 7.0 1.000000 5.0 7.0 
1 1.0 2.5 4.0 1.500000 1.5 2.0 
2 1.0 2.0 3.0 1.666667 2.0 1.0 

如果长度是不同的,你会得到NaN

s = pd.Series([1,2]) 
print (s) 
0 1 
1 2 
dtype: int64 

print (df.div(s, axis=0)) 
    A B C D E F 
0 1.0 4.0 7.0 1.0 5.0 7.0 
1 1.0 2.5 4.0 1.5 1.5 2.0 
2 NaN NaN NaN NaN NaN NaN 
+0

如果我的曲我不清楚,我有不同的长度,但索引是相同的。因此,我想按索引 – tadalendas

+0

划分所以我的解决方案不适合你?如果没有,您可以添加我的样本所需的输出吗? – jezrael

+0

有一个小类型,谢谢你的解决方案 – tadalendas