Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 新しい列の追加 | セクション
Pandasによるデータ操作

book新しい列の追加

メニューを表示するにはスワイプしてください

DataFrame の作成方法を学習済み。次に、その活用方法を確認。まず、3 列と 7 行からなるコンパクトな DataFrame を作成。

1234567
import pandas as pd countries_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(countries_data) print(countries)
copy

次の構文を使って、新しい列を追加することで DataFrame を拡張可能。

dataframe['name_of_new_column'] = [value_1, value_2, value_3]
  • dataframe は列を追加する既存の DataFrame
  • name_of_new_column は新しい列名;
  • value_1, value_2, value_3 は新しい列に格納する値。
Note
注意

新しい列名は引用符で囲み、角括弧で囲む必要があります。例:['NewColumnName']。新しい列に割り当てる値も角括弧内に記述します。例:data['NewColumnName'] = [value1, value2, value3]。値が数値の場合は、[1, 2, 3]のように引用符なしで記述できます。値が文字列の場合は、それぞれを引用符で囲み、['A', 'B', 'C']のように記述します。

次に、既存の'population'データフレームにcountries列を追加します。

12345678
import pandas as pd countries_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(countries_data) countries['population'] = [61399000, 75967000, 39244, 380200, 10380491, 5496000, 2424200] print(countries)
copy

ドット記法(例:df.column)は既存の列へのアクセスには使用できますが、新しい列の作成には使用できません。この目的には必ず角括弧記法(例:df['column'])を使用してください。

12345678
import pandas as pd countries_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(countries_data) countries.population = [61399000, 75967000, 39244, 380200, 10380491, 5496000, 2424200] print(countries)
copy

予想通り、'population'列は作成されませんでした。これはPandasがこの方法で列を作成することを許可していないためです。

question mark

次のうち、countries DataFrame に 'population' という新しい列を指定された値で追加する正しい方法はどれですか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  5

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 1.  5
some-alt