csvファイルを読み取り、グラフを作成しようとしています。
Time (GMT)、Dominant (peak) wave period (s) ,Significant wave height (Hm0) (m)の3列に数値がそれぞれ与えられているcsvファイルを読み込みたいのですが、dfを作成するとNaNの列が7列できてしまいます。
データは圧縮された状態でダウンロードし、展開してからread_csvに入れています。
columnsは3と表示されていますが、数値が左から3つ、NaNが7つの10列になっています。
RangeIndex: 17473 entries, 0 to 17472
Data columns (total 3 columns):
Column Non-Null Count Dtype
0 Time (GMT) 17473 non-null object
1 Dominant (peak) wave period (s) 16527 non-null float64
2 Significant wave height (Hm0) (m) 17473 non-null float64
このようなdataframeにしたいのですが、以下のようになっています。
MultiIndex: 17473 entries, ('2018-01-01 00:00:00', 10.0, 3.12, nan, nan, nan, nan, nan) to ('2018-12-31 00:00:00', 4.2, 0.39, nan, nan, nan, nan, nan)
Data columns (total 3 columns):
Column Non-Null Count Dtype
0 Time (GMT) 0 non-null float64
1 Dominant (peak) wave period (s) 0 non-null float64
2 Significant wave height (Hm0) (m) 0 non-null float64
dtypes: float64(3)
発生している問題・エラーメッセージ
エラーメッセージは出ていません。
該当のソースコード
import pandas as pd
pd.set_option('display.max_rows',10)
df_csv=pd.read_csv('hastings-wavenet-site.csv',)
df_csv
試したこと
sep='\s+' これをread_csv関数の中に入れたら10columnsとなり、悪化しました。
df['Time (GMT)']=pd.to_datetime(df['Time (GMT)'])
df['Time (GMT)']
df_2=df.set_index("Time (GMT)")
df_2
この方法で試したところ、indexで日時、そして二つのカラムとなりましたが、すべての数値がNaNでした。
補足情報(FW/ツールのバージョンなど)
python 3.9.6
jupyter notebook
回答2件
あなたの回答
tips
プレビュー