[关闭]
@Channelchan 2018-09-30T13:31:15.000000Z 字数 1319 阅读 78187

1、 List转Numpy

  1. aList = [1,2,3,4,5]
  2. bList = [1,3,5,7,9]
  3. aList+bList
[1, 2, 3, 4, 5, 1, 3, 5, 7, 9]
  1. import numpy as np
  2. aArray = np.array(aList)
  3. bArray = np.array(bList)
  1. aArray+bArray
array([ 2,  5,  8, 11, 14])

2、 Numpy转Series

  1. import pandas as pd
  2. aSeries = pd.Series(aArray, index=pd.date_range("20180101",periods=len(aArray), freq="D"))
  3. bSeries = pd.Series(bArray, index=pd.date_range("20180101",periods=len(bArray), freq="D"))
  1. cSeries = aSeries+bSeries
  2. dSeries = aSeries*bSeries

3、 Series转DataFrame

  1. abDF = pd.DataFrame({'a': aSeries, 'b':bSeries})
  1. print(abDF)
            a  b
2018-01-01  1  1
2018-01-02  2  3
2018-01-03  3  5
2018-01-04  4  7
2018-01-05  5  9
  1. print(pd.concat([aSeries, bSeries], axis=1, keys=['a','b']))
            a  b
2018-01-01  1  1
2018-01-02  2  3
2018-01-03  3  5
2018-01-04  4  7
2018-01-05  5  9
  1. cdDF = pd.DataFrame({'a': cSeries, 'b':dSeries})

4、 DataFrame转Panel

  1. abcdPN = pd.Panel({'abDF': abDF, 'cdDF': cdDF})
  1. print(abcdPN.transpose(2,1,0).to_frame(False))
                   a   b
major      minor        
2018-01-01 abDF    1   1
           cdDF    2   1
2018-01-02 abDF    2   3
           cdDF    5   6
2018-01-03 abDF    3   5
           cdDF    8  15
2018-01-04 abDF    4   7
           cdDF   11  28
2018-01-05 abDF    5   9
           cdDF   14  45

5、 iteritem()

计算每一列的加总

  1. {item: value.sum() for item, value in abDF.iteritems()}
{'a': 15, 'b': 25}

6、 iterrow()

计算每一行的加总

  1. {index: value.sum() for index, value in abDF.iterrows()}
{Timestamp('2018-01-01 00:00:00', freq='D'): 2,
 Timestamp('2018-01-02 00:00:00', freq='D'): 5,
 Timestamp('2018-01-03 00:00:00', freq='D'): 8,
 Timestamp('2018-01-04 00:00:00', freq='D'): 11,
 Timestamp('2018-01-05 00:00:00', freq='D'): 14}
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注