Skapa en DataFrame

Intermediate Python för finans

Kennedy Behrman

Data Engineer, Author, Founder

Pandas

import pandas as pd
print(pd)
<module 'pandas' from '.../pandas/__init__.py'>
Intermediate Python för finans

Pandas DataFrame

pd.DataFrame()
Intermediate Python för finans

Pandas DataFrame

Kol 1 Kol 2 Kol 3
0 v1 a 00
1 v2 b 01
2 v3 c 13.02
Intermediate Python för finans

Från dict

data = {'Bank Code': ['BA', 'AAD', 'BA'],
        'Account#': ['ajfdk2', '1234nmk', 'mm3d90'],
        'Balance':[1222.00, 390789.11, 13.02]}
df = pd.DataFrame(data=data)
Intermediate Python för finans

Från dict

data = {'Bank Code': ['BA', 'AAD', 'BA'],
        'Account#': ['ajfdk2', '1234nmk', 'mm3d90'],
        'Balance':[1222.00, 390789.11, 13.02]}
df = pd.DataFrame(data=data)
Bank Code Account# Balance
0 BA ajfdk2 1222.00
1 AAD 1234nmk 390789.11
1 BA mm3d90 13.02
Intermediate Python för finans

Från lista av dict:ar

data = [{'Bank Code': 'BA', 'Account#': 'ajfdk2',  'Balance': 1222.00},
        {'Bank Code': 'AAD', 'Account#': '1234nmk', 'Balance': 390789.11},
        {'Bank Code': 'BA', 'Account#': 'mm3d90', 'Balance': 13.02}]
df = pd.DataFrame(data=data)
Intermediate Python för finans

Från lista av dict:ar

data = [{'Bank Code': 'BA', 'Account#': 'ajfdk2',  'Balance': 1222.00},
        {'Bank Code': 'AAD', 'Account#': '1234nmk', 'Balance': 390789.11},
        {'Bank Code': 'BA', 'Account#': 'mm3d90', 'Balance': 13.02}]
df = pd.DataFrame(data=data)
Bank Code Account# Balance
0 BA ajfdk2 1222.00
1 AAD 1234nmk 390789.11
1 BA mm3d90 13.02
Intermediate Python för finans

Från lista av listor

data = [['BA',  'ajfdk2',  1222.00],
        ['AAD', '1234nmk', 390789.11],
        ['BA',  'mm3d90',  13.02]]      
df = pd.DataFrame(data=data)
Intermediate Python för finans

Från lista av listor

data = [['BA',  'ajfdk2',  1222.00],
        ['AAD', '1234nmk', 390789.11],
        ['BA',  'mm3d90',  13.02]]      
df = pd.DataFrame(data=data)
0 1 2
0 BA ajfdk2 1222.00
1 AAD 1234nmk 390789.11
1 BA mm3d90 13.02
Intermediate Python för finans

Från lista av listor med kolumnnamn

data = [['BA',  'ajfdk2',  1222.00],
        ['AAD', '1234nmk', 390789.11],
        ['BA',  'mm3d90',  13.02]]      
columns = ['Bank Code', 'Account#', 'Balance']
df = pd.DataFrame(data=data, columns=columns)
Bank Code Account# Balance
0 BA ajfdk2 1222.00
1 AAD 1234nmk 390789.11
1 BA mm3d90 13.02
Intermediate Python för finans

Från lista av listor med kolumnnamn

data = [['BA',  'ajfdk2',  1222.00],
        ['AAD', '1234nmk', 390789.11],
        ['BA',  'mm3d90',  13.02]]      
columns = ['Bank Code', 'Account#', 'Balance']
df = pd.DataFrame(data=data, columns=columns)
Bank Code Account# Balance
0 BA ajfdk2 1222.00
1 AAD 1234nmk 390789.11
2 BA mm3d90 13.02
Intermediate Python för finans

Läsa in data

  • Excel pd.read_excel
  • JSON pd.read_json
  • HTML pd.read_html
  • Pickle pd.read_pickle
  • Sql pd.read_sql
  • Csv pd.read_csv
Intermediate Python för finans

CSV

Kommaseparerade värden

client id,trans type, amount
14343,buy,23.0
0574,sell,2000
7093,dividend,2234
Intermediate Python för finans

Läsa en csv-fil

df = pd.read_csv('/data/daily/transactions.csv')
Intermediate Python för finans

Läsa en csv-fil

df = pd.read_csv('/data/daily/transactions.csv')
client id trans type amount
14343 buy 23.0
0574 sell 2000
7093 dividend 2234
Intermediate Python för finans

CSV med annat avgränsningstecken

client id|trans type| amount
14343|buy|23.0
0574|sell|2000
7093|dividend|2234
Intermediate Python för finans

CSV med annat avgränsningstecken

df = pd.read_csv('/data/daily/transactions.csv', sep='|')
Intermediate Python för finans

CSV med annat avgränsningstecken

df = pd.read_csv('/data/daily/transactions.csv', sep='|')
client id trans type amount
14343 buy 23.0
0574 sell 2000
7093 dividend 2234
Intermediate Python för finans

Nu kör vi en övning!

Intermediate Python för finans

Preparing Video For Download...