Pandas DataFrame に 1 行を追加する方法
Asad Riaz
2023年1月30日
-
.loc[index]
メソッドを使用して、リストを含む行を Pandas dataframe に追加する - 辞書を行として追加して、Pandas dataframe に追加する
-
行を追加するための dataframe
.append
メソッド
Pandas は完全に入力された DataFrame
をロードするように設計されています。pandas.Dataframe
に 1 行ずつ追加できます。これは、.loc
、dictionaries
、pandas.concat()
、または DataFrame.append()
などのさまざまなアプローチを使用して実行できます。
.loc[index]
メソッドを使用して、リストを含む行を Pandas dataframe に追加する
loc[index]
は新しいリストを新しい行として受け取り、それを pandas.Dataframe
の指定された index
に追加します。
次のコードについて考えます。
# python 3.x
import pandas as pd
# List of Tuples
fruit_list = [("Orange", 34, "Yes")]
# Create a DataFrame object
df = pd.DataFrame(fruit_list, columns=["Name", "Price", "Stock"])
# Add new ROW
df.loc[1] = ["Mango", 4, "No"]
df.loc[2] = ["Apple", 14, "Yes"]
print(df)
出力:
Name Price Stock
0 Orange 34 Yes
1 Mango 4 No
2 Apple 14 Yes
辞書を行として追加して、Pandas dataframe に追加する
append()
は、key-value
ペアのディクショナリの値を直接行として取得し、Pandas DataFrame
に追加できます。
次のコードについて考えます。
# python 3.x
import pandas as pd
# List of Tuples
fruit_list = [("Orange", 34, "Yes")]
# Create a DataFrame object
df = pd.DataFrame(fruit_list, columns=["Name", "Price", "Stock"])
# Add new ROW
df = df.append({"Name": "Apple", "Price": 23, "Stock": "No"}, ignore_index=True)
df = df.append({"Name": "Mango", "Price": 13, "Stock": "Yes"}, ignore_index=True)
print(df)
出力:
Name Price Stock
0 Orange 34 Yes
1 Apple 23 No
2 Mango 13 Yes
行を追加するための dataframe .append
メソッド
.append
を使用して、他の DataFrame
の行を元の DataFrame
の末尾に追加し、新しい DataFrame
を返すことができます。元の datafarme
にない新しい DataFrame
の列も既存の DataFrame
に追加され、新しいセルの値は NaN
で埋められます。
次のコードについて考えます。
# python 3.x
import pandas as pd
# List of Tuples
fruit_list = [("Orange", 34, "Yes")]
# Create a DataFrame object
df = pd.DataFrame(fruit_list, columns=["Name", "Price", "Stock"])
print("Original DataFrame:")
print(df)
print(".............................")
print(".............................")
new_fruit_list = [("Apple", 34, "Yes", "small")]
dfNew = pd.DataFrame(new_fruit_list, columns=["Name", "Price", "Stock", "Type"])
print("Newly Created DataFrame:")
print(dfNew)
print(".............................")
print(".............................")
# append one dataframe to othher
df = df.append(dfNew, ignore_index=True)
print("Copying DataFrame to orignal...")
print(df)
ignore_index=True
は新しい DataFrame
の index
を無視し、元の DataFrame
からの新しいインデックスを割り当てます。
出力:
Original DataFrame:
Name Price Stock
0 Orange 34 Yes
.............................
.............................
Newly Created DataFrame:
Name Price Stock Type
0 Apple 34 Yes small
.............................
.............................
Copying DataFrame to original..:
Name Price Stock Type
0 Orange 34 Yes NaN
1 Apple 34 Yes small