假设我有一个包含现有内容的熊猫数据框:
import pandas as pd
df = pd.DataFrame(columns=['content'])
df['content'] = pd.Series(["a","b","c","d","e"])
df.head()
content
0 a
1 b
2 c
3 d
4 e
set.add(value)
)答案 0 :(得分:0)
两个问题都比预期的要困难。
要使用空集初始化新列:
df['Sets'] = [set() for _ in range(len(df))]
df.head()
content Sets
0 a {}
1 b {}
2 c {}
3 d {}
4 e {}
使用唯一的字符串更新记录集的子集:
row_ids_to_update = [1,3,4]
column_id_set = df.columns.get_loc("Sets")
update_string = "uid12345"
df.iloc[row_ids_to_update, column_id_set].apply(
lambda x: x.add(update_string))
df.head()
content Sets
0 a {}
1 b {uid12345}
2 c {}
3 d {uid12345}
4 e {uid12345}
也许有更快的方式进行大量更新,例如避免使用 lambda ?