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