gpt4 book ai didi

Python - 如何使用多个分隔符拆分列值

转载 作者:太空宇宙 更新时间:2023-11-04 07:56:36 25 4
gpt4 key购买 nike

我正在读取 .csv 文件并创建 Panda Dataframe。我从这个 Dataframe 中获取一个值,该值应该是一个“列表”项,其中包含逗号分隔值。但它作为“字符串”项目出现,我必须使用分隔符来拆分其中的值。

例如:我有一个名为“column_names”的字符串变量,其值如下

column_names = "First_Name, Last_Name,Middle_Name"
column_names = column_name.split(',')

请注意第二个值之前的空格。所以当我打印这个变量时,我会在第二个元素之前得到一个空格,这会在从这个变量中提取值时进一步造成麻烦。

print(column_names)

['First_Name', ' Last_Name', 'Middle_Name']

为了克服这个问题,如果我让分隔符与实际分隔符(此处为 ', ')保持空格,则值不会正确拆分,如下所示

column_names = "First_Name, Last_Name,Middle_Name"
column_names = column_names.split(', ')
print(column_names)

['First_Name', 'Last_Name,Middle_Name']

注意拆分时逗号右边的空格。使用此分隔符,我只能获得两个值而不是三个值。

我的问题是变量可能包含逗号分隔值以及逗号左侧或右侧的空格,或者可能根本没有空格。我必须用一个命令处理所有情况(如果可能的话)。比如在拆分时提供多个分隔符值。

例如:column_names.split(','|', '|' ,')。

不确定是否有这样的东西,但任何指向它的指针都会有所帮助。

最佳答案

这是 CSV 的常见问题。幸运的是,您可以将其防患于未然,只需正确阅读您的 CSV,这样您以后就不必进行所有这些不必要的后处理。

当使用 read_csv 读取数据帧时,将正则表达式传递给 sep\delimiter -

df = pd.read_csv(..., sep='\s*,\s*', engine='python')

现在,df.columns 应该是一个字符串列表。

关于Python - 如何使用多个分隔符拆分列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47770013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com