扩展与操作数据

Python 金融进阶

Kennedy Behrman

Data Engineer, Author, Founder

PCE

个人消费支出(PCE)

PCE =

Python 金融进阶

PCE

个人消费支出(PCE)

PCE = PCDG

耐用品

A Stove

1 作者 cactus cowboy 2 Open Clipart,CC0,https://commons.wikimedia.org/w/index.php?curid=64953673
Python 金融进阶

PCE

个人消费支出(PCE)

PCE = PCDG + PCNDG

非耐用品

Pineapple

1 作者 Smart Servier 2 https://smart.servier.com/,CC BY 3.0,https://commons.wikimedia.org/w/index.php?curid=74765623
Python 金融进阶

PCE

个人消费支出(PCE)

PCE = PCDG + PCNDG + PCESV

服务

Man with clipboard

1 作者 Clip Art by Vector Toons 2 自制作品,CC BY-SA 4.0,https://commons.wikimedia.org/w/index.php?curid=65937611
Python 金融进阶

PCE - 添加与删除列

DATE PCDGA
1929-01-01 9.829
1930-01-01 7.661
1931-01-01 5.911
1932-01-01 3.959
Python 金融进阶

PCE - 添加与删除列

pce['PCND'] = [[33.941,
                30.503,
                25.798000000000002,
                20.169]
Python 金融进阶

PCE - 添加与删除列

pce
DATE PCDG PCND
1929-01-01 9.829 33.941
1930-01-01 7.661 30.503
1931-01-01 5.911 25.798
1932-01-01 3.959 20.169
Python 金融进阶

PCE - 添加与删除列

pce
DATE PCDG PCND
1929-01-01 9.829 33.941
1930-01-01 7.661 30.503
1931-01-01 5.911 25.798
1932-01-01 3.959 20.169
pcesv
PCESV
0 33.613
1 31.972
2 28.963
3 24.587
Python 金融进阶

PCE - 添加与删除列

pce['PCESV'] = pcesv
pce
Python 金融进阶

PCE - 添加与删除列

pce['PCESV'] = pcesv
pce
DATE PCDG PCND PCESV
1929-01-01 9.829 33.941 33.613
1930-01-01 7.661 30.503 31.972
1931-01-01 5.911 25.798 28.963
1932-01-01 3.959 20.169 24.587
Python 金融进阶

PCE - 添加与删除列

pce['PCE'] = pce['PCDG'] + pce['PCND'] + pce['PCESV']
Python 金融进阶

PCE - 添加与删除列

pce['PCE'] = pce['PCDG'] + pce['PCND'] + pce['PCESV']
DATE PCDG PCND PCESV PCE
1929-01-01 9.829 33.941 33.613 77.383
1930-01-01 7.661 30.503 31.972 70.136
1931-01-01 5.911 25.798 28.963 60.672
1932-01-01 3.959 20.169 24.587 48.715
Python 金融进阶

PCE - 添加与删除列

pce.drop(columns=['PCDG', 'PCND', 'PCESV'], 
         axis=1, 
         inplace=True)
Python 金融进阶

PCE - 添加与删除列

pce.drop(columns=['PCDG', 'PCND', 'PCESV'], 
         axis=1, 
         inplace=True)
DATE PCE
1929-01-01 77.383
1930-01-01 70.136
1931-01-01 60.672
1932-01-01 48.715
Python 金融进阶

PCE - 添加与删除行

new_row
Python 金融进阶

PCE - 添加与删除行

new_row
DATE PCE
1933-01-01 45.945
pce.append(new_row)
Python 金融进阶

PCE - 添加与删除行

new_row
DATE PCE
1933-01-01 45.945
pce.append(new_row)
DATE PCE
1929-01-01 77.383
1930-01-01 70.136
1931-01-01 60.672
1932-01-01 48.715
1933-01-01 45.945
Python 金融进阶

PCE - 添加与删除行

添加多行

new_rows = [ row1, row2, row3
]
for row in new_rows:
    pce = pce.append(row)
Python 金融进阶

PCE - 添加与删除行

添加多行

for row in new_rows:
    pce = pce.append(row)
DATE PCE
1929-01-01 77.383
1930-01-01 70.136
1931-01-01 60.672
1932-01-01 48.715
1933-01-01 45.945
1934-01-01 51.461
1935-01-01 55.933
Python 金融进阶

PCE - 添加与删除行

pce.drop(['1934-01-01',
          '1935-01-01',
          '1936-01-01',
          '1937-01-01',
          '1938-01-01',
          '1939-01-01'], 
          inplace=True)
Python 金融进阶

PCE - 添加与删除行

pce.drop(['1934-01-01',
          '1935-01-01',
          '1936-01-01',
          '1937-01-01',
          '1938-01-01',
          '1939-01-01'], 
          inplace=True)
DATE PCE
1929-01-01 77.383
1930-01-01 70.136
1931-01-01 60.672
1932-01-01 48.715
1933-01-01 45.945
Python 金融进阶

PCE - 添加与删除行

all_rows = [row1, row2, row3, pce]
pd.concat(all_rows)
Python 金融进阶

PCE - 添加与删除行

all_rows = [row1, row2, row3, pce]
pd.concat(all_rows)
DATE PCE
1929-01-01 77.383
1930-01-01 70.136
1931-01-01 60.672
1932-01-01 48.715
1933-01-01 45.945
1934-01-01 51.461
1935-01-01 55.933
Python 金融进阶

PCE - 对 DataFrame 进行运算

ec = 0.88
pce * ec
Python 金融进阶

PCE - 对 DataFrame 进行运算

ec = 0.88
pce * ec
DATE PCE
1934-01-01 45.28568
1935-01-01 49.22104
1936-01-01 54.72544
1937-01-01 58.81832
Python 金融进阶

PCE - map

def convert_to_euro(x):
    return x * 0.88

pce['EURO'] = pce['PCE'].map(convert_to_euro)
Python 金融进阶

PCE - map

def convert_to_euro(x):
    return x * 0.88

pce['EURO'] = pce['PCE'].map(convert_to_euro)
DATE PCE EURO
1934-01-01 51.461 45.28568
1935-01-01 55.933 49.22104
1936-01-01 62.188 54.72544
Python 金融进阶

国内生产总值(GDP)

  • GDP = PCE + GE + GPDI + NE

  • PCE:个人消费支出

  • GE:政府支出

  • GPDI:私人国内总投资

  • NE:净出口

Python 金融进阶

GDP - apply

map - 列(Series)中的元素

apply - 跨行或列

Python 金融进阶

GDP - apply

GCE GPDI NE PCE
DATE
1929-01-01 9.622 17.170 0.383 77.383
1930-01-01 10.273 11.428 0.323 70.136
1931-01-01 10.169 6.549 0.001 60.672
1932-01-01 8.946 1.819 0.043 48.715
Python 金融进阶

GDP - apply

gdp.apply(np.sum, axis=1)
Python 金融进阶

GDP - apply

gdp['GDP'] = gdp.apply(np.sum, axis=1)
GCE GPDI NE PCE GDP
DATE
1929-01-01 9.622 17.170 0.383 77.383 104.558
1930-01-01 10.273 11.428 0.323 70.136 92.160
1931-01-01 10.169 6.549 0.001 60.672 77.391
1932-01-01 8.946 1.819 0.043 48.715 59.523
Python 金融进阶

Vamos praticar!

Python 金融进阶

Preparing Video For Download...