![](/img/trans.png)
[英]Extract a list with values whose position is indicated by the values in another column from a Pandas DataFrame
[英]Extract a list of values from a column in a pandas dataframe
我正在尝试从 dataframe 中的列中提取值列表。
例如:
# dataframe with "num_fruit" column
fruit_df = pd.DataFrame({"num_fruit": ['1 "Apple"',
'100 "Peach Juice3" 1234 "Not_fruit" 23 "Straw-berry" 2 "Orange"']})
# desired output: a list of values from the "num_fruit" column
[['1 "Apple"'],
['100 "Peach Juice3"', '1234 "Not_fruit"', '23 "Straw-berry"', '2 "Orange"']]
有什么建议么? 非常感谢。
我试过的:
import re
def split_fruit_val(val):
return re.findall('(\d+ ".+")', val)
result_list = []
for val in fruit_df['num_fruit']:
result = split_fruit_val(val)
result_list.append(result)
print(result_list)
#output: some values were not split appropriately
[['1 "Apple"'],
['100 "Peach Juice3" 1234 "Not_fruit" 23 "Straw-berry" 2 "Orange"']]
让我们用积极的前瞻性来split
一个数字
fruit_df['num_fruit'].str.split(r'\s(?=\d+)')
0 [1 "Apple"]
1 [100 "Peach Juice3", 1234 "Not_fruit", 23 "Str...
Name: num_fruit, dtype: object
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.