今、以下のようなデータがあります。
data=
[[1332, '560', '566', '556', '563'],
[1333, '3,480', '3,585', '3,465', '3,565'],
[1605, '1,309.5', '1,310', '1,287.5', '1,292'],
[1721, '2,814', '2,823', '2,776', '2,796'],
[1801, '5,340', '5,380', '5,310', '5,360'],
[1802, '1,146', '1,152', '1,138', '1,146'],
[1803, '944', '953', '934', '950']]
上記のデータを以下にように変換できることを期待しています。
(リスト内の各リストの最初の要素を削除し、それ以外の数値文字列を数値(float型)に変換したい)
[[560.0, 566.0, 556.0, 563.0],
[3480.0, 3585.0, 3465.0, 3565.0],
[1309.5, 1310.0, 1287.5, 1292.0],
[2814.0, 2823.0, 2776.0, 2796.0],
[5340.0, 5380.0, 5310.0, 5360.0],
[1146.0, 1152.0, 1138.0, 1146.0],
[944.0, 953.0, 934.0, 950.0]]
以下のようにコードを書いてみたのですが、実現できませんでした。
new_data=list(map(float,data[i][1:]))
エラーメッセージ
ValueError: could not convert string to float: '3,480'
どのように記載すれば、私が思うことを実現できるのでしょうか?小数点やカンマが存在するのが気になるのですが、どのようにコードを書けば解決できるのか見当が付きません。どなたか、ご教授いただければ幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/04 08:28
2018/04/04 22:19