web-dev-qa-db-ja.com

辞書をデータフレームに追加する

次のような辞書を返す関数があります:

{'truth': 185.179993, 'day1': 197.22307753038834, 'day2': 197.26118010160317, 'day3': 197.19846975345905, 'day4': 197.1490578795196, 'day5': 197.37179265011116}

私はこの辞書を次のようにデータフレームに追加しようとしています:

output = pd.DataFrame()
output.append(dictionary, ignore_index=True)
print(output.head())

残念ながら、データフレームの印刷は空のデータフレームになります。何か案は?

9
cs0815

結果に値を割り当てません。

output = pd.DataFrame()
output = output.append(dictionary, ignore_index=True)
print(output.head())
16
alex

あなたが何を望んでいるのか分かりません。

ただし、コンストラクタが入力辞書を読み取るように、このdictを読み取りたい場合は、

pd.DataFrame([d])

と同じです

df.append([d]) # same as df.append(d, ignore_index=True)

これらすべての出力

    day1        day2        day3        day4        day5        truth
0   197.223078  197.26118   197.19847   197.149058  197.371793  185.179993

df.appendは、新しいデータフレームを返します(list.appendは、リストをインプレースで変更し、None)を返すため、dfに割り当て直す必要があります。

セルにこのディクショナリを含める場合は、単に

df = pd.DataFrame()
df['n'] = [d]

出力するだろう

    n
0   {'truth': 185.179993, 'day1': 197.223077530388...
1
rafaelc