質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

統計

統計は、集団現象を数量で把握することです。また、調査で得られた性質や傾向を数量的に表したデータのことをいいます。

Q&A

解決済

1回答

1042閲覧

[pandas]カラム内の値を使って、新しいカラムを作成する

sho.sho

総合スコア2

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

統計

統計は、集団現象を数量で把握することです。また、調査で得られた性質や傾向を数量的に表したデータのことをいいます。

0グッド

0クリップ

投稿2021/06/17 04:48

こんにちは!
pythonを使って、統計処理を行っている初心者です。
カラムの値を使って、新しいカラム作成とその中の値を作成しようとしています。
都道府県を区別せずに、「市」の名前が入っているカラムを使って、「都道府県」にまとめた新しいカラム(列)を作成したいです。

dataframeを使ってデータを作成し、
locを使いましたが、エラーが出てしまいました。

どのように修正すればよいか、教えていただけると嬉しいです。
どうぞよろしくお願いします。

発生している問題・エラーメッセージ

TypeError: 'Series' objects are mutable, thus they cannot be hashed

該当のソースコード

python

1df_a.loc[(df_a['市']=='大阪市','堺市'),'県']= '大阪府' 2df_a.loc[(df_a['市']=='京都市','亀岡市'),'県']= '京都府' 3

試したこと

新しいカラムに、参照したいカラム内の値(列)をコピーし、変更する形も取りましたが、うまくいきませんでした。

補足情報(FW/ツールのバージョンなど)

可能であれば、各都道府県の市のリストを作成し、それを参照する形でカラムが作成できると嬉しいです。
(振り分けるルール作り)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

やりたいことは、
市が大阪市か堺市なら県を大阪府にして、
市が京都市か亀岡市なら県を京都府にする、
ということでしょうか?

だとすると書き方が違っていて、次のように書きます。

python

1df_a.loc[(df_a['市'] == '大阪市') | (df_a['市'] == '堺市'), '県'] = '大阪府' 2df_a.loc[(df_a['市'] == '京都市') | (df_a['市'] == '亀岡市'), '県'] = '京都府'

isin を使うともう少し簡単に書けます。

python

1df_a.loc[df_a['市'].isin(['大阪市', '堺市']), '県'] = '大阪府' 2df_a.loc[df_a['市'].isin(['京都市', '亀岡市']), '県'] = '京都府'

投稿2021/06/17 05:41

bsdfan

総合スコア4763

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sho.sho

2021/06/17 06:31

早速、修正したところ動作させることができました! 解答いただきありがとうございました! また、是非よろしくお願いいたします!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問