Python
 Computer >> コンピューター >  >> プログラミング >> Python

パンダの既存のDataFrameに新しい列を追加する


Pandasデータフレームは2次元のデータ構造です。つまり、データは行と列に表形式で配置されます。 python dict、list、seriesなどを使用して作成できます。この記事では、既存のデータフレームに新しい列を追加する方法を説明します。まず、pandasシリーズを使用してデータフレームを作成しましょう。次の例では、パンダシリーズを1列のデータフレームに変換し、Month_noという列名を付けています。

import pandas as pd
s = pd.Series([6,8,3,1,12])
df = pd.DataFrame(s,columns=['Month_No'])
print (df)

出力

上記のコードを実行すると、次の結果が得られます。

   Month_No
0       6
1       8
2       3
3       1
4       12

insert()関数の使用

pandasのinsert()関数を使用して、インデックスで指定された位置に列を挿入できます。以下では、インデックス位置1にある既存のパンダDataFrameに、列として1か月の日数を追加します。

import pandas as pd
s = pd.Series([6,8,3,1,12])
df = pd.DataFrame(s,columns=['Month_No'])

# Insert the new column at position 1.
df.insert(1,"No_of_days",[30,31,31,31,31],True)
print (df)

出力

上記のコードを実行すると、次の結果が得られます-

   Month_No No_of_days
0       6       30
1       8       31
2       3       31
3       1       31
4       12      31

assign()関数の使用

Assign()関数

import pandas as pd
s = pd.Series([6,8,3,1,12])
df = pd.DataFrame(s,columns=['Month_No'])

# Insert a column at the end
df = df.assign(No_of_days = [30,31,31,31,31])

print (df)

出力

上記のコードを実行すると、次の結果が得られます-

   Month_No No_of_days
0       6       30
1       8       31
2       3       31
3       1       31
4       12      31

  1. Pandasデータフレームの列の最初の文字を大文字にします

    pandasデータフレームは、行と列を持つテーブルに似ています。データフレームの1つの列の最初の文字を大文字にする必要がある場合があります。これは、次の方法で実現できます。 データフレームの作成 以下の例では、最初に、列名がDayおよびSubjectであるデータフレームを作成します。 例 import pandas as pd # A dataframe df = pd.DataFrame({'Day': ['mon', 'tue', 'wed', 'thu', 'fri'], 'Subj

  2. Pandasデータフレームの列に大文字を適用します

    例 import pandas as pd # A dataframe df = pd.DataFrame({'Day': ['mon', 'tue', 'wed', 'thu', 'fri'],'Subject': ['Math', 'english', 'science', 'music', 'games']}) df['Day'] = df['Day'].str.up