Python Pandasを使用して、行と列の更新方法
Pythonのpandasを使用して行と列の更新方法を理解しましょう。現実の世界では、ほとんどの場合、分析に適したデータセットをそのまま手に入れることはありません。不整合や無効な値、不適切なラベルなどがある場合があります。そのような場合には、データの均一性を確保するためにこれらの値を更新することが重要です。このチュートリアルでは、Pythonの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の辞書を作成しました。そして、この辞書をパンダのデータフレームに変換するよう依頼されました。
#Dataframe
data = pd.DataFrame(fruit_data)
data
それは完璧です!pandasのpd.DataFrame関数を使用することで、簡単に辞書を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
すごいですね!
「Pineapple(パイナップル)の価格を65に更新しました。これがPythonのひとつの行で行われる方法です。シンプルです。」
5. 条件に基づいて行と列を更新してください。
はい、今、特定の条件に基づいて行の値を更新しようとしています。最終的に、分析に役立つ意味のある値が欲しいと考えています。
条件を定義しましょう。 (Jōken o teigi shimashou.)
#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 を楽しんでください!
もっと読む: パンダのデータフレーム