ウェブサイト検索

Python Pandasを使用して行と列を更新する方法


Python pandasを使用して行と列を更新する方法を理解しましょう。実際の世界では、ほとんどの場合、分析用の準備が整ったデータセットを取得することはありません。一貫性のないデータや無効な値、不適切なラベルなど、多くの問題が存在する可能性があります。このことを踏まえて、データの均一性を達成するためにこれらの値を更新する必要があります。このチュートリアルでは、pandasを使用してPythonで行と列を更新する方法に焦点を当てます。前置きにあまり時間を費やさずに、さっそく行動に移りましょう!

1. Pandasデータフレームを作成する

このチュートリアル全体では、これから作成するデータフレームを使用します。これにより、データに対する更新操作のアイデアが得られます。その後、これらのメソッドをあなたのデータに適用することができます。

データフレームを作成するために、pandasはpd.DataFrameという関数を提供しており、これを使用するとデータからデータフレームを作成できます。それがどのように機能するか見てみましょう。

#create a dictionary 

import pandas as pd

fruit_data = {"Fruit": ['Apple','Avacado','Banana','Strawberry','Grape'],"Color": ['Red','Green','Yellow','Pink','Green'],
"Price": [45, 90, 60, 37, 49]
}

fruit_data

ここでは、いくつかのデータ値を持つPythonの辞書を作成しました。今、私たちはこの辞書をpandasのデータフレームに変換するように求められました。

#Dataframe 

data = pd.DataFrame(fruit_data)
data

それは完璧です!pandasのpd.DataFrame関数を使用することで、辞書を簡単にpandasデータフレームに変換できます。私たちのデータセットは、今後の操作を行う準備が整いました。

さらに読む: Pandasを使用して列の順序を変更する方法

2. カラムの更新

時々、列や特徴の名前が一致しないことがあります。これはアルファベットの大文字と小文字の違いやその他の要素によることがあります。統一されたデザインを持つことで、特徴を効果的に扱うのに役立ちます。

したがって、最初のステップとして、データ内の列や特徴の名前をどのように更新または変更できるかを見ていきます。

#update the column name

data.rename(columns = {'Fruit':'Fruit Name'})

それで終わりです。上に示された通り非常に簡単です。一度に複数の列名を更新することもできます。そのためには、波括弧の下にコンマで区切って他の列名を追加する必要があります。

#multile column update

data.rename(columns = {'Fruit':'Fruit Name','Colour':'Color','Price':'Cost'})

このようにして、すべての列を同時に更新できます。

3. 列名の大文字小文字を更新する

多くの列を持つデータセットで作業しているとき、列名の大文字小文字の不一致に遭遇したかもしれません。

私たちのデータでは、すべての列名の最初の文字が大文字になっていることがわかります。すべての列名に共通の大文字小文字の形式を持つことをお勧めします。

さて、あなたはそれらを大文字にするか小文字にすることができます。

#lower case

data.columns.str.lower()
data

さて、すべての列が小文字になっています。

4. 行の値の更新

列を更新するのと同様に、行の値の更新も非常に簡単です。まず、行の値を見つけ、その後、新しい値でその行を更新することができます。

pandasのloc関数を使用して行を見つけることができます。

#updating rows

data.loc[3]
Fruit    Strawberry
Color          Pink
Price            37
Name: 3, dtype: object

私たちは、果物の詳細が含まれている行番号3を特定しました。今、私たちはこの行をパイナップルという新しい果物とその詳細で更新する必要があります。

行こう!

#update

data.loc[3] = ['PineApple','Yellow','48']
data

それだけです。あなたもデータの行の値を更新するのが簡単だと感じることを願っています。さて、行の中でいくつかの詳細だけを更新する必要があるとしましょう。では、その場合、あなたのアプローチはどうなりますか?

#update specific values

data.loc[3, ['Price']]
Price    48
Name: 3, dtype: object

3行目にある果物の価格だけを更新する必要があります。その果物の現在の価格は48であることがわかりました。しかし、それを65に更新する必要があります。そうしましょう。

#updating 

data.loc[3, ['Price']] = [65]
data

すごい :P

私たちは、パイナップルの価格を65に更新しました。これはたった1行のPythonコードで行いました。それがどのように機能するかです。シンプルです。

5. 条件に基づいて行と列を更新する

はい、私たちは現在、特定の条件に基づいて行の値を更新しようとしています。最終的に、分析に役立つ意味のある値が欲しいと思っています。

私たちの条件を定義しましょう。

#Condition

updated = data['Price'] > 60
updated

ここで行うことは、60以上の価格の果物を高価として更新することです。

0    False
1     True
2    False
3     True
4    False
Name: Price, dtype: bool

出力に基づいて、価格が60より高い果物が2つあります。それらの果物をデータにおいて高価として引用しましょう。

#Updating

data.loc[updated, 'Price'] = 'Expensive'
data

信じて、あなたは素晴らしいよ :).

あなたは素晴らしい方法で完璧にそれを成し遂げました。このチュートリアル全体で、私は2行以上のコードを使ったことがありません。私ができる最良の提案は、できるだけpandasを学ぶことです。これは非常に優れたライブラリであり、多くの1行の関数を提供していますが、仕事を素晴らしく成し遂げることができます。

まとめ - 行と列の更新

データの行と列を更新することは、分析の前に私たちが集中すべき主要なことの一つです。簡単な関数やコードを使うことで、データをより意味のあるものにすることができます。このプロセスでは、データの質や今後の要件についての洞察を得ることが確実にできるでしょう。データが正しい場合、本当に貴重な話をたくさん明らかにすることができます。

このチュートリアルが何らかの形で役立つことを願っています。また、分析作業にこれらの実践を忘れずに取り入れてください。

今のところそれだけです。楽しいPythonを!!!

さらに読む: パンダのデータフレーム

関連記事: