DataFrame的向量计算

arr.csv
date,s1,s2,s3,s4,s5
05-21,27.93  ,28.18 , 29.39  ,40.52 , 26.26
05-22,58.08  ,50.61 , 51.62  ,48.55  ,54.03
05-23,38.67  ,31.73  ,57.91  ,59.23  ,49.08
05-24,45.83  ,31.48  ,45.94  ,71.21  ,46.53
05-25,70.26  ,55.96  ,53.81  ,58.48  ,43.23
05-26,46.61  ,22.73  ,45.77  ,63.63  ,56.79
05-27,49.73  ,40.47  ,69.13  ,55.16  ,58.71
05-28,34.02  ,42.02  ,28.75  ,34.90  ,26.43
05-29,56.64  ,31.39  ,43.43  ,54.65  ,44.97
05-30,57.28 , 64.21  ,55.79 , 68.03  ,54.16

DataFrame向量计算案例

import pandas as pd
df1 = pd.DataFrame({'a':[1,2,3],'b':[4,5,6],'c':[7,8,9]})
df2 = pd.DataFrame({'a':[10,20,30],'b':[40,50,60],'c':[70,80,90]})
print(df1+df2)

df1 = pd.DataFrame({'a':[1,2,3],'b':[4,5,6],'c':[7,8,9]})
df2 = pd.DataFrame({'d':[10,20,30],'c':[40,50,60],'b':[70,80,90]})
print(df1+df2)

df1 = pd.DataFrame({'a':[1,2,3],'b':[4,5,6],'c':[7,8,9]},index=['1','2','3'])
df2 = pd.DataFrame({'a':[10,20,30],'b':[40,50,60],'c':[70,80,90]},index=['4','3','2'])

print(df1+df2)

#计算水果销量每天的变化量
df = pd.read_csv('arr.csv',index_col='date')
print(df)

df1 = df.shift(1)
print(df1)

print(df -df1)

运算结果如下:

    a   b   c
0  11  44  77
1  22  55  88
2  33  66  99
    a   b   c   d
0 NaN  74  47 NaN
1 NaN  85  58 NaN
2 NaN  96  69 NaN
      a     b     c
1   NaN   NaN   NaN
2  32.0  65.0  98.0
3  23.0  56.0  89.0
4   NaN   NaN   NaN
          s1     s2     s3     s4     s5
date                                    
05-21  27.93  28.18  29.39  40.52  26.26
05-22  58.08  50.61  51.62  48.55  54.03
05-23  38.67  31.73  57.91  59.23  49.08
05-24  45.83  31.48  45.94  71.21  46.53
05-25  70.26  55.96  53.81  58.48  43.23
05-26  46.61  22.73  45.77  63.63  56.79
05-27  49.73  40.47  69.13  55.16  58.71
05-28  34.02  42.02  28.75  34.90  26.43
05-29  56.64  31.39  43.43  54.65  44.97
05-30  57.28  64.21  55.79  68.03  54.16
          s1     s2     s3     s4     s5
date                                    
05-21    NaN    NaN    NaN    NaN    NaN
05-22  27.93  28.18  29.39  40.52  26.26
05-23  58.08  50.61  51.62  48.55  54.03
05-24  38.67  31.73  57.91  59.23  49.08
05-25  45.83  31.48  45.94  71.21  46.53
05-26  70.26  55.96  53.81  58.48  43.23
05-27  46.61  22.73  45.77  63.63  56.79
05-28  49.73  40.47  69.13  55.16  58.71
05-29  34.02  42.02  28.75  34.90  26.43
05-30  56.64  31.39  43.43  54.65  44.97
          s1     s2     s3     s4     s5
date                                    
05-21    NaN    NaN    NaN    NaN    NaN
05-22  30.15  22.43  22.23   8.03  27.77
05-23 -19.41 -18.88   6.29  10.68  -4.95
05-24   7.16  -0.25 -11.97  11.98  -2.55
05-25  24.43  24.48   7.87 -12.73  -3.30
05-26 -23.65 -33.23  -8.04   5.15  13.56
05-27   3.12  17.74  23.36  -8.47   1.92
05-28 -15.71   1.55 -40.38 -20.26 -32.28
05-29  22.62 -10.63  14.68  19.75  18.54
05-30   0.64  32.82  12.36  13.38   9.19

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值