pandasを使って、文字列を置換するコードを作成しました。置換後の数字を数値として扱いたいのですがどうすればよいでしょうか?私のコードだと文字列として扱われてます。
import pandas as pd df = pd.read_excel('~\amedas.xlsx', skiprows=2) df = df.replace('静穏','calm') df = df.replace('北北東','22.5') df = df.replace('東北東','67.5') df = df.replace('東南東','112.5') df = df.replace('南南東','157.5') df = df.replace('南南西','202.5') df = df.replace('西南西','247.5') df = df.replace('西北西','292.5') df = df.replace('北北西', '337.5') df = df.replace('北東','45') df = df.replace('南東','135') df = df.replace('南西','225') df = df.replace('北西','315') df = df.replace('東','90') df = df.replace('南','180') df = df.replace('西','270') df = df.replace('北','360') df.to_excel('~\amedastest.xlsx')
amedas.xlsxは以下のようなファイルです。上のコードで、アメダスの風向データを北を0°とした角度のデータに変換しようとしています。(下のはcsvですが、、、)
amedas.xlsx
1ダウンロードした時刻:2021/09/14 17:06:38,,,,,,,,,,,,,,,,,,,,,,,,,,, 2,,,,,,,,,,,,,,,,,,,,,,,,,,, 3,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京,東京 4年月日時,気温(℃),気温(℃),気温(℃),風速(m/s),風速(m/s),風速(m/s),風速(m/s),風速(m/s),現地気圧(hPa),現地気圧(hPa),現地気圧(hPa),相対湿度(%),相対湿度(%),相対湿度(%),蒸気圧(hPa),蒸気圧(hPa),蒸気圧(hPa),露点温度(℃),露点温度(℃),露点温度(℃),海面気圧(hPa),海面気圧(hPa),海面気圧(hPa),降水量(mm),降水量(mm),降水量(mm),降水量(mm) 5,,,,,,風向,風向,,,,,,,,,,,,,,,,,,,, 6,,品質情報,均質番号,,品質情報,,品質情報,均質番号,,品質情報,均質番号,,品質情報,均質番号,,品質情報,均質番号,,品質情報,均質番号,,品質情報,均質番号,,現象なし情報,品質情報,均質番号 72021/8/13 1:00,23.9,8,1,2.4,8,東北東,8,1,1007.8,8,1,91,8,1,27,8,1,22.3,8,1,1010.6,8,1,0,0,8,1 82021/8/13 2:00,23.7,8,1,3,8,北東,8,1,1007.6,8,1,92,8,1,27,8,1,22.3,8,1,1010.4,8,1,0,0,8,1 92021/8/13 3:00,23,8,1,2.8,8,北東,8,1,1007.7,8,1,97,8,1,27.3,8,1,22.5,8,1,1010.5,8,1,0.5,0,8,1 102021/8/13 4:00,22.4,8,1,4,8,東北東,8,1,1008,8,1,94,8,1,25.5,8,1,21.4,8,1,1010.8,8,1,0.5,0,8,1 112021/8/13 5:00,21.8,8,1,3.6,8,北,8,1,1009.2,8,1,97,8,1,25.3,8,1,21.3,8,1,1012,8,1,0,0,8,1 122021/8/13 6:00,20.9,8,1,2.1,8,東南東,8,1,1009.2,8,1,97,8,1,24,8,1,20.4,8,1,1012,8,1,1.5,0,8,1 132021/8/13 7:00,20.9,8,1,1.8,8,東南東,8,1,1009.8,8,1,98,8,1,24.2,8,1,20.6,8,1,1012.6,8,1,1.5,0,8,1 14
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/21 09:37