やりたいことはデータフレームの特定の列を抽出するという単純なことです。
ただ、一部の列名のリスト?だけを事前に変数として定義して、それを使おうとしています。
Python
1import pandas as pd 2#original 3df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9], 4 'd': [10, 11, 12], 'e': [13, 14, 15], 'f': [16, 17, 18]}) 5#dfから列['b', 'e', 'f']を抽出したい 6#通常 7df1 = df[['b', 'e', 'f']] 8 9#※今回やりたいこと(イメージ) 10colname = ['e', 'f'] 11df2 = df[['b', colname]]
上記のようにdf2を作成すると、エラーメッセージ「unhashable type: 'list'」と出てしまいうまくいきません。
これはcolnameの定義方法を変える必要があるような気がするのですが、正しい書き方が分かりません。
ご教示いただけますと幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/04 02:55