質問: ### 前提・実現したいこと ・年齢=>年代のダミー変数 ・極力コンパクトで綺麗なコード 年齢や、性別のデータが入ったCSVファイルからpandasのデータフレームにしてあります。 手元にあるデータの年齢の部分を年代別(e.g. 「0-9」...[90-99])のようなダミー変数に変換したいと考えています ### 試したこと ``` train_add=pd.DataFrame(columns=["{0}-{1}".format(i,i+9) for i in range(0,100,10)]) train=pd.concat([train,train_add],axis=1) train.head() ``` の形で列を追加してからif文で一個一個のデータを比較してほぼ手動で一個一個ダミー変数に変換という手法を考えたのですが長くてめんどくさくないそうだったのでここでやめました。 ### ・調べても調べ方が悪く、データフレームの扱いがヒットしなかった ・学習を兼ねたデータ解析であるため極力コンパクトで綺麗なコードにしたい という理由から質問をさせていただきます。 当方プログラミング自体がまだ始めたばかりですので、初心者にもわかりやすい形で答えていただければ幸いです。
回答: ダミーデータがリストだと思うので、そのリストに、与えられた年齢から10で割った商をインデックスとして加算していけば良いでしょう。 ``` for age in train_add: data[age/10] += 1 ``` とか(ダミー変数:data)