例如,您有一個如下所示的列:
第一列 |
---|
adfghb, gad |
234rwfa |
巴爾巴巴 |
9adfad9, 5432 |
99a |
預期輸出:
list1 = ["adfghb", "gad", "234rwfa", "ballbalba", "9adfad9", "5432", "99a"]
列中的數據類型僅為字符串。我需要有效的代碼,因為實際的列非常大。我使用了for
循環,但花費的時間太長了。
您可以使用str
Pandas 之外的方法:
>>> ', '.join(df['Column1']).split(', ')
['adfghb', 'gad', '234rwfa', 'ballbalba', '9adfad9', '5432', '99a']
表現
對於 25,000 行:
# @MayankPorwal
%timeit df['Column1'].str.split(', ').explode().tolist()
9.99 ms ± 85.3 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
# @jezrael
%timeit [y for x in df['Column1'] for y in x.split(', ')]
4.25 ms ± 30.2 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
# @Corralien
%timeit ', '.join(df['Column1']).split(', ')
2.24 ms ± 22.1 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句