通过将两个系列相乘来在pandas中创建数据帧

Aoi*_*ife 5 python series dataframe pandas

假设我在熊猫中有两个系列,A系列和B系列.如何创建一个数据帧,其中所有这些值相乘,即左侧为A系列,顶部为B系列.基本上与此相同的概念,其中系列A在左侧是黄色而系列B在顶部是黄色,并且其间的所有值将通过乘法填充:

http://www.google.co.uk/imgres?imgurl=http://www.vaughns-1-pagers.com/computer/multiplication-tables/times-table-12x12.gif&imgrefurl=http://www. vaughns-1-pagers.com/computer/multiplication-tables.htm&h=533&w=720&sz=58&tbnid=9B8R_kpUloA4NM:&tbnh=90&tbnw=122&zoom=1&usg=__meqZT9kIAMJ5b8BenRzF0l-CUqY=&docid=j9BT8tUCNtg--M&sa=X&ei=bkBpUpOWOI2p0AWYnIHwBQ&ved=0CE0Q9QEwBg

对不起,应该补充说我的两个系列的长度不一样.我现在得到一个错误'矩阵没有对齐'所以我认为这是问题所在.

Rom*_*kar 5

您可以使用矩阵乘法点,但在您必须将 Series 转换为 DataFrame 之前(因为 Series 上的dot 方法实现了 dot product):

>>> B = pd.Series(range(1, 5))
>>> A = pd.Series(range(1, 5))
>>> dfA = pd.DataFrame(A)
>>> dfB = pd.DataFrame(B)
>>> dfA.dot(dfB.T)
   0  1   2   3
0  1  2   3   4
1  2  4   6   8
2  3  6   9  12
3  4  8  12  16
Run Code Online (Sandbox Code Playgroud)