パンダ-MongoDBにデータフレームを挿入します

Munichong

MongoDBにデータフレームを挿入しようとしています。各行は1つのドキュメントである必要があります。

from pymongo import MongoClient
import pandas as pd

client = MongoClient()
col = client['test']['test']

d = {'name': ['Braund', 'Cummings', 'Heikkinen', 'Allen'],
     'age': [22,38,26,35],
     'fare': [7.25, 71.83, 0 , 8.05],
     'survived?': [False, True, True, False]}

df = pd.DataFrame(d)

col.insert_many(df)

ただし、上記のコードはエラーを返します。 ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

変更col.insert_many(df)するcol.insert_many(df.to_dict())か、col.insert_many(df.to_json())原因TypeError: document must be an instance of dict, bson.son.SON, bson.raw_bson.RawBSONDocument, or a type that inherits from collections.MutableMapping

フリードリヒ

あなたは非常に近かったので、コードを再利用できます。

注意、我々はまだ使用pymongo.MongoClientし、pandas.DataFrame.to_dict後者で追加1つのPARAMで、。to_dict(orient='records')
その後、

from pymongo import MongoClient
import pandas as pd

client = MongoClient()  # Remember your uri string
col = client['test']['test']

df = pd.DataFrame({'name': ['Braund','Cummings','Heikkinen','Allen'],
                   'age': [22,38,26,35],
                   'fare': [7.25, 71.83, 0 , 8.05],
                   'survived?': [False, True, True, False]})

data = df.to_dict(orient='records')  # Here's our added param..

col.insert_many(data)

つまり、orient='records'出力を指定することにより、dictのリストが作成され、同じ形式がinsert_many。で受け入れられます。また、ボーナスとして、to_dictと比較して、日時タイプの列の方が優れていますto_json

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

matplotlib画像をパンダのデータフレームに挿入します

分類Dev

sqlalchemyを使用してパンダデータフレームをmysqlに挿入します

分類Dev

パンダ:インデックスを保持せずにデータフレームを他のデータフレームに挿入します

分類Dev

行の値に基づいてパンダのデータフレームに行を挿入しますか?

分類Dev

日付列に基づいてパンダデータフレームに行を挿入します

分類Dev

パンダはデータフレームに行の小計を挿入します

分類Dev

パンダデータフレームに値を挿入

分類Dev

ランダムなデータ文字列を新しいデータフレーム列に挿入します

分類Dev

パンダのデータフレームにデータフレームを挿入する方法

分類Dev

NAをデータフレームに比例してランダムに挿入します

分類Dev

パンダ-手動でデータフレームを作成し、値を挿入します

分類Dev

データフレームの列にランダムに1を挿入します

分類Dev

文字列をコンマで分割し、パンダのデータフレームに挿入する方法

分類Dev

NAの値をパンダデータフレームにランダムに挿入する

分類Dev

パンダはMySQLにデータを挿入します

分類Dev

パンダ:データフレーム列に不足しているデータを入力します

分類Dev

不足している日付をパンダデータフレームのフラットファイルに挿入します

分類Dev

パンダのデータフレームセルにリストを挿入

分類Dev

locを使用してマルチヘッダーデータフレームに列を挿入します

分類Dev

空白行のパンダデータフレームを挿入する

分類Dev

別のデータフレームの条件を使用して、パンダのデータフレームにデータを入力して生成します

分類Dev

Pythonのリストに変更せずに、パンダのデータフレームに行を挿入します

分類Dev

Pythonパンダ:欠落している日付、時系列の行をgroupbyデータフレームに挿入します

分類Dev

パンダのデータフレームの別の列に基づく値でいくつかの新しい列を挿入します

分類Dev

予約フォームのヒント:カレンダー(データピッカー)を挿入し、タイムピッカー(?)を挿入します

分類Dev

空のパンダデータフレームにタプルを挿入する

分類Dev

パンダのデータフレームから5行を読み取り、別のパンダのデータフレームの1行に1つのセルに挿入します。

分類Dev

マルチインデックスデータフレームに列を挿入します

分類Dev

日時インデックスのある行をデータフレームに挿入します

Related 関連記事

  1. 1

    matplotlib画像をパンダのデータフレームに挿入します

  2. 2

    sqlalchemyを使用してパンダデータフレームをmysqlに挿入します

  3. 3

    パンダ:インデックスを保持せずにデータフレームを他のデータフレームに挿入します

  4. 4

    行の値に基づいてパンダのデータフレームに行を挿入しますか?

  5. 5

    日付列に基づいてパンダデータフレームに行を挿入します

  6. 6

    パンダはデータフレームに行の小計を挿入します

  7. 7

    パンダデータフレームに値を挿入

  8. 8

    ランダムなデータ文字列を新しいデータフレーム列に挿入します

  9. 9

    パンダのデータフレームにデータフレームを挿入する方法

  10. 10

    NAをデータフレームに比例してランダムに挿入します

  11. 11

    パンダ-手動でデータフレームを作成し、値を挿入します

  12. 12

    データフレームの列にランダムに1を挿入します

  13. 13

    文字列をコンマで分割し、パンダのデータフレームに挿入する方法

  14. 14

    NAの値をパンダデータフレームにランダムに挿入する

  15. 15

    パンダはMySQLにデータを挿入します

  16. 16

    パンダ:データフレーム列に不足しているデータを入力します

  17. 17

    不足している日付をパンダデータフレームのフラットファイルに挿入します

  18. 18

    パンダのデータフレームセルにリストを挿入

  19. 19

    locを使用してマルチヘッダーデータフレームに列を挿入します

  20. 20

    空白行のパンダデータフレームを挿入する

  21. 21

    別のデータフレームの条件を使用して、パンダのデータフレームにデータを入力して生成します

  22. 22

    Pythonのリストに変更せずに、パンダのデータフレームに行を挿入します

  23. 23

    Pythonパンダ:欠落している日付、時系列の行をgroupbyデータフレームに挿入します

  24. 24

    パンダのデータフレームの別の列に基づく値でいくつかの新しい列を挿入します

  25. 25

    予約フォームのヒント:カレンダー(データピッカー)を挿入し、タイムピッカー(?)を挿入します

  26. 26

    空のパンダデータフレームにタプルを挿入する

  27. 27

    パンダのデータフレームから5行を読み取り、別のパンダのデータフレームの1行に1つのセルに挿入します。

  28. 28

    マルチインデックスデータフレームに列を挿入します

  29. 29

    日時インデックスのある行をデータフレームに挿入します

ホットタグ

アーカイブ