2019年2月17日日曜日

Python3 データI/O

Jupyter 上で多様なコードを書いていますが、同じコマンド・ルーチンを必要とする場面に多く遭遇します。
毎回探しに行くのも面倒ですので、辞書代わりに、まとめておきます。

まずは、データI/O。pandas 主体。
import pandas as pd

#csv読み込み
df=pd.read_csv('./aaa.csv',
               index_col=[0],
               usecols=[0, 1,3,4],
               header=None,
               dtype={'A': 'uint32', 'date':'datetime64'},
               encoding='cp932')
       
#csv書き込み
df.to_csv('./aaa.csv',encoding='cp932')

#EXCEL読み込み
df=pd.read_excel('./aaa.xlsx',
   sheet_name=0,
   skiprows=[0,1],
   header=2,
   usecols=[0, ,1, 2],
   index_col=0)
       
#EXCEL書き込み
excel_writer = pd.ExcelWriter('./aaa.xlsx')
df1.to_excel(excel_writer, '111',index=False)
df2.to_excel(excel_writer, '222')
excel_writer.save()
 
#hdf書き込み
df1.to_hdf('./aaa.h5', key='b', mode='w')
df2.to_hdf('./aaa.h5', key='b')
df3.to_hdf('./aaa.h5', key='c')

#hdf読み込み・・・key毎に読み込み、df化して処理
import h5py
f = h5py.File('./aaa.h5', 'r') 
list=list(f.keys()) 
for i,keyname in enumerate(list):
    df=pd.read_hdf('./aaa.h5', key=keyname)

20200215追記修正

0 件のコメント:

コメントを投稿