Python 只更改一个列分隔符

Python 只更改一个列分隔符,python,python-3.x,hive,pyspark,rdd,Python,Python 3.x,Hive,Pyspark,Rdd,a=['0,意大利,“香气包括热带水果、扫帚、硫磺和干药草。口感不太富于表现力,提供未成熟的苹果、柑橘和干鼠尾草,伴随着清爽的酸度。”,VulkáBianco,87,,西西里和撒丁岛,埃特纳,Kerin O'Keefe,@kerinokeefe,尼科西亚2013 VulkáBianco(埃特纳),白葡萄酒,尼科西亚'] 我有这个列表,我只想将粗体字符串分隔符从“,”改为“#”,例如。这将获得给定输入所需的内容: a[0].split('"')[1].replace(",", "#") 但有些事

a=['0,意大利,“香气包括热带水果、扫帚、硫磺和干药草。口感不太富于表现力,提供未成熟的苹果、柑橘和干鼠尾草,伴随着清爽的酸度。”,VulkáBianco,87,,西西里和撒丁岛,埃特纳,Kerin O'Keefe,@kerinokeefe,尼科西亚2013 VulkáBianco(埃特纳),白葡萄酒,尼科西亚']


我有这个列表,我只想将粗体字符串分隔符从“,”改为“#”,例如。

这将获得给定输入所需的内容:

a[0].split('"')[1].replace(",", "#")
但有些事情告诉我这不是很有用/一般

但无论如何,这类问题的解决方案可能涉及以下两种字符串/列表方法:
split
replace

使现代化 因此,如果需要使用spark RDD,可以首先使用字符串列表(还不是csv)创建RDD

因为您只提供了一个示例行,所以我有几个假设

这些假设是关于双引号字符串
”的存在,该字符串是需要替换逗号的列

此外,我假设在任何其他列中都没有

我还假设此列在处理后不需要这些

解释
rdd
方法
map
将函数映射到rdd中的每一行,而
map
获取的lambda返回新行。所以在这里,我将这个替换命令链映射到RDD中的每一行(然后在示例中,我
获取
one)

您的输出应该是什么?是否有理由将其标记为
pyspark
和RDD?基本上,我有一个CSV文件,然后我必须在HDFS中创建一个配置单元表。但由于描述中有逗号,分隔符会把一切都搞糟。因此,一位同事告诉我,我需要在Python中对其进行更改,如果您能给出这样一个RDD示例,那么使用RDD'sit将非常有用(你可以在
pyspark
shell中创建一个,使用
spark
上下文和几行内容,我可以用更好的示例更新我的答案,这只是CSV文件中50行中的一行。我只是需要一些关于如何操作的想法,以便我可以将其复制到文件的其余部分。顺便说一句,谢谢你的帮助!我希望这是一个更好的解决方案。)n然后:),我用一些spark示例更新了它
>>> rdd = sc.parallelize(a)
>>> rdd.take(1)
['0,Italy,"Aromas include tropical fruit, broom, brimstone and dried herb. The palate isnt overly expressive, offering unripened apple, citrus and dried sage alongside brisk acidity.",Vulk\xc3\xa0 Bianco,87,,Sicily & Sardinia,Etna,,Kerin O\xe2\x80\x99Keefe,@kerinokeefe,Nicosia 2013 Vulk\xc3\xa0 Bianco (Etna),White Blend,Nicosia']
>>> processed_rdd = rdd.map(lambda row: row.split('"')[0] + row.split('"')[1].replace(",", "#") + row.split('"')[2])
>>> processed_rdd.take(1)
['0,Italy,Aromas include tropical fruit# broom# brimstone and dried herb. The palate isnt overly expressive# offering unripened apple# citrus and dried sage alongside brisk acidity.,Vulk\xc3\xa0 Bianco,87,,Sicily & Sardinia,Etna,,Kerin O\xe2\x80\x99Keefe,@kerinokeefe,Nicosia 2013 Vulk\xc3\xa0 Bianco (Etna),White Blend,Nicosia']