はひふへほ

ゲーム,雑記,美味い飯.時々アイマス.

PandasのDataFrameで読み込んだ配列が文字列になっちゃったとき

技術ブログ潰したのでこっちに書いていく。

やっていたこと

  • PandasでCSVを読み込んでDataFrameを作る
  • CSVの要素のうち、配列が要素として含まれている
  • これをそのままpandas.read_csv()すると、配列は文字列として解釈される。当然このまま処理するといろいろ思ったとおりに動かなくてコケる。

対処法

  • それぞれの要素に対して処理するapply()関数で、eval()して配列として認識させて、それをそのまま代入するだけ
df["a"] = df["a"].apply(lambda x: eval(x))