時間の差分を数字に変換する方法
- 環境:JupyterLab, pythonを使用
- 自身のレベル:入門書を読み切っていない段階で、ググりながらデータ処理をしています。
- 概要:時系列データのx軸を数字(例えば秒)に変換してフィッティングに使用したいのですがうまくいきません。方法をご教授いただければと思います。
- 方法:時系列のcsvデータをpd.read_csvで読み込みます。時間にてデータを切り分けたいため、時間をindexに指定します。開始時間を設定して、その時間を引いた差分データを秒に変換してデータとして使用したいです。下記のようなコードを作成し、データの読み込み、時間での切り直しはうまくいきましたが、差分を作成してからの秒データへの変換で躓いております。ご教授頂ければと思います。
python
1import pandas as pd 2import numpy as np 3import datetime 4 5#データ読み込み 6df_all = pd.read_csv('xxx.csv',usecols=['date','A','B'],encoding='shift-jis') 7#'date'をdatetime64に変更 8df_all['date'] = pd.to_datetime(df_all['date']) 9#'date'をindexにset 10df_all.set_index('date', inplace = True) 11# 時間でデータを切り直す 12df = df_all['2018/10/10':'2018/11/11'] 13# dateの差分を作成してnumpyのarrayに入れ込む 14start_time = np.datetime64('2018-10-10T00:00:00.000000000') 15date_delta = np.array((df.index.values - start_time).item().total.seconds())
- Error内容
---> date_delta = np.array((df.index.values - start_time).item().total.seconds())
ValueError: can only convert an array of size 1 to a Python scalar
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/23 15:31