Python bson:如何在新列中创建 ObjectId 列表
Python bson: How to create list of ObjectIds in a New Column
我有一个 CSV,我需要在 python 中创建一列随机唯一 MongoDB ID。
这是我的 csv 文件:
import pandas as pd
df = pd.read_csv('file.csv', sep=';')
print(df)
Zone
Zone_1
Zone_2
我目前正在使用这行代码生成唯一的 ObjectId
- UPDATE
import bson
x = bson.objectid.ObjectId()
df['objectids'] = x
print(df)
Zone; objectids
Zone_1; 5bce2e42f6738f20cc12518d
Zone_2; 5bce2e42f6738f20cc12518d
如何让每一行的 ObjectId 唯一?
讨厌看到你被否决...堆栈溢出因重复的问题胡说八道而发疯,拒绝提供有用的帮助,然后因为你有勇气问你不知道的事情而被否决。
所引用的问题显然与 ObjectId 无关,更不用说将它们(或任何其他非 NumPy 或 Pandas 内部的对象)添加到数据框中了。
您可能需要使用地图
这假设列 "objectids" 不是 框架中的系列并且 "Zone" 是 系列在你的相框中
df['objectids'] = df['Zone'].map(lambda x: bson.objectid.ObjectId())
地图是查找系列中每条记录的非常有用(虽然速度慢)的方法,作为连接外部函数的初始方法特别有用。
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.map.html
我有一个 CSV,我需要在 python 中创建一列随机唯一 MongoDB ID。
这是我的 csv 文件:
import pandas as pd
df = pd.read_csv('file.csv', sep=';')
print(df)
Zone
Zone_1
Zone_2
我目前正在使用这行代码生成唯一的 ObjectId
- UPDATE
import bson
x = bson.objectid.ObjectId()
df['objectids'] = x
print(df)
Zone; objectids
Zone_1; 5bce2e42f6738f20cc12518d
Zone_2; 5bce2e42f6738f20cc12518d
如何让每一行的 ObjectId 唯一?
讨厌看到你被否决...堆栈溢出因重复的问题胡说八道而发疯,拒绝提供有用的帮助,然后因为你有勇气问你不知道的事情而被否决。
所引用的问题显然与 ObjectId 无关,更不用说将它们(或任何其他非 NumPy 或 Pandas 内部的对象)添加到数据框中了。
您可能需要使用地图
这假设列 "objectids" 不是 框架中的系列并且 "Zone" 是 系列在你的相框中
df['objectids'] = df['Zone'].map(lambda x: bson.objectid.ObjectId())
地图是查找系列中每条记录的非常有用(虽然速度慢)的方法,作为连接外部函数的初始方法特别有用。
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.map.html