Python Pandas - いくつかの列型をカテゴリに変更する
2023-11-04 12:44:21
質問
以下のCSVファイルをiPython Notebookに取り込みました。
public = pd.read_csv("categories.csv")
public
pandasをpd、nmpyをnp、matplotlib.pyplotをpltとしてインポートしました。 以下のデータ型があります(以下は要約です - 列数は約100です)。
In [36]: public.dtypes
Out[37]: parks object
playgrounds object
sports object
roading object
resident int64
children int64
公園」、「遊び場」、「スポーツ」、「道路」をカテゴリに変更し、残りはint64のままにしておきたいと思います(これらのカテゴリにはリッカート尺度による回答があります。
私は、次のコードを使用して、別のデータフレーム - public1 - を作成し、列の 1 つをカテゴリ タイプに変更することができました。
public1 = {'parks': public.parks}
public1 = public1['parks'].astype('category')
しかし、このコードを使って一度に数字を変更しようとすると、失敗してしまいました。
public1 = {'parks': public.parks,
'playgrounds': public.parks}
public1 = public1['parks', 'playgrounds'].astype('category')
とはいえ、カテゴリ列だけのデータフレームを別に作りたいわけではありません。 元のデータフレームで変更してほしいのです。
これを実現するために様々な方法を試した結果、こちらのコードを試しました。 Pandas: カラムのデータ型を変更する ...
public[['parks', 'playgrounds', 'sports', 'roading']] = public[['parks', 'playgrounds', 'sports', 'roading']].astype('category')
と入力すると、以下のようなエラーが発生しました。
NotImplementedError: > 1 ndim Categorical are not supported at this time
公園」、「遊び場」、「スポーツ」、「道路」をカテゴリに変更し、「居住者」と「子供」(および文字列、int + float である他の 94 列)はそのままにする方法はありますか? それとも、もっと良い方法があるのでしょうか? もし、どなたか提案やフィードバックがあれば、とてもありがたいのですが......髪をかきわけながら、ゆっくりと禿げそうです
事前に多くの感謝を。
edited to add - 私はPython 2.7を使用しています。
どのように解決するのですか?
for-loopを使うしかない場合もあります。
for col in ['parks', 'playgrounds', 'sports', 'roading']:
public[col] = public[col].astype('category')
関連
-
[解決済み] Pandasのカラム名のリネーム
-
[解決済み] Pandas DataFrameからカラムを削除する
-
[解決済み] 既存のDataFrameに新しい列を追加する方法は?
-
[解決済み] Pandas DataFrameの特定の列の値がNaNである行を削除する方法
-
[解決済み] PandasでDataFrameの行を列の値に基づいて削除する
-
[解決済み】Pandas DataFrameのカラムヘッダからリストを取得する。
-
[解決済み】pandasでカラムの種類を変更する
-
[解決済み】Pandasでシリーズ/データフレームのカラムを条件付きで作成する。
-
[解決済み] Pandasの'Freq'タグにはどのような値が有効ですか?
-
[解決済み] Jupyter (IPython)ノートブックのセッションをpickleして保存する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】pandasでカラムの種類を変更する
-
[解決済み] SQLAlchemy: セッションの作成と再利用
-
[解決済み] Pythonでコード行間にかかる時間を測定するには?
-
[解決済み] PythonでSVGからPNGに変換する
-
[解決済み] Python 3でバイナリデータを標準出力に書き込むには?
-
[解決済み] Pandasの'Freq'タグにはどのような値が有効ですか?
-
[解決済み] PythonからSMTPを使用してメールを送信する
-
[解決済み] Pythonで0xを使わずにhex()を使うには?
-
[解決済み] SQLAlchemy - テーブルのリストを取得する
-
[解決済み] Flask でグローバル変数はスレッドセーフか?リクエスト間でデータを共有するには?