我想从pandas dataframe的两个不同列中提取值,将它们放入一个没有重复值的列表中。
我尝试过以下几种方法:
arr = df[['column1', 'column2']].values
thelist= []
for ix, iy in np.ndindex(arr.shape):
if arr[ix, iy] not in thelist:
thelist.append(edges[ix, iy])
这行得通,但时间太长了。数据帧包含大约3000万行。
示例:
column1 column2
1 adr1 adr2
2 adr1 adr2
3 adr3 adr4
4 adr4 adr5
应使用以下值生成列表:
[adr1, adr2, adr3, adr4, adr5]
考虑到数据帧包含3000万行,您能帮我找到一种更有效的方法吗?
发布于 2019-02-22 02:59:00
@ALollz给出了正确的答案。我将从那里扩展。要像预期那样转换为列表,只需使用list(np.unique(df.values))
https://stackoverflow.com/questions/54814286
复制相似问题