見出し画像

csvのファイルからデータを取得したけれど

時系列データとして読み込めない時はどうするべきなのでしょうね。
以前に試行錯誤してみましたが、良い変換方法があることに気が付きました。

pandasのto_datetimeです。
csvを読み込む時にobject型で読み込み、後でdatetime型に変換すれば良いのです。

体重の計測データを以下のCSV形式で作成しています。
2020-5-31 12:34:56,64.2


#pandasを使う宣言
import pandas as pd

#CSVの読み込み 、日付型では読み込めないので、一旦object型で読み込む
df = pd.read_csv('abc.csv',names=('ds', 'y'), dtype = {'ds':'object', 'y':'float'})


#時系列分析のための構造体を作成する
#最初に数値をfloat型で格納
my_df=pd.Series(df['y'], dtype='float')

#基準となるindexを日時型のdsを変換して格納
my_df.index=pd.to_datetime(df['ds'])

#indexの名前を確認
print(my_df.index.name)

#indexの形式を確認
print(my_df.index.dtype)

#読み込んだCSVファイルの行数
print(len(my_df))

#構造体の主データの名前
print(my_df.name)

#構造体の主データの形式
print(my_df.dtype)

#構造体の先頭データを表示
print(my_df.head())

#学習 #勉強 #Python #プログラミング



いいなと思ったら応援しよう!