pythonbson:如何在新列中创建objectid列表
我有一个CSV,我需要在python中创建一列随机唯一的MongoDB ID 这是我的csv文件:pythonbson:如何在新列中创建objectid列表,python,pymongo,bson,Python,Pymongo,Bson,我有一个CSV,我需要在python中创建一列随机唯一的MongoDB ID 这是我的csv文件: import pandas as pd df = pd.read_csv('file.csv', sep=';') print(df) Zone Zone_1 Zone_2 我目前正在使用这行代码生成唯一的ObjectId-更新 如何使ObjectId对每一行都是唯一的?我讨厌看到你被否决。。。堆栈溢出(stack overf
import pandas as pd
df = pd.read_csv('file.csv', sep=';')
print(df)
Zone
Zone_1
Zone_2
我目前正在使用这行代码生成唯一的ObjectId
-更新
如何使ObjectId对每一行都是唯一的?我讨厌看到你被否决。。。堆栈溢出(stack overflow)会因为重复的问题胡说八道而发疯,拒绝提供有用的帮助,然后会因为你们有勇气问一些你们不知道的事情而投票给你们 引用的问题显然与objectid无关,更不用说将它们(或任何其他不在NumPy或Pandas内部的对象)添加到数据帧中了 你可能需要使用地图 这假设列“objectids”不是帧中的序列,“Zone”是帧中的序列
df['objectid']=df['Zone'].map(lambda x:bson.objectid.objectid())
映射是一种非常有用(尽管速度很慢)的方法,可以戳出系列中的每条记录,并且作为连接外部函数的初始方法特别有用
可能与Hi@mattdonders重复,谢谢您的回复。这很接近,我现在在
df
中创建了一个ObjectId
列,但是没有一个id是唯一的,它们都是相同的id。。。请看我的更新。是的!非常感谢你。我是pymongo的新手,所以我不太确定如何回答一些问题。非常感谢你的回答!
import bson
x = bson.objectid.ObjectId()
df['objectids'] = x
print(df)
Zone; objectids
Zone_1; 5bce2e42f6738f20cc12518d
Zone_2; 5bce2e42f6738f20cc12518d