databricks-csv文件最后一列有多个seprators(需要在单个列中使用)

pb3s4cty  于 2021-05-27  发布在  Spark
关注(0)|答案(2)|浏览(298)

我试图处理csv文件,其中最后一列有多个(逗号)分隔成多个列
预期列7(1至6)在正确的格式后,输入图像描述这里6(昏迷)我们需要在一列中的所有数据
带标题的示例行:

SEQUENCE    CHECK_TIME  DEVICE  ORIGIN  NAMESPACE   SERVICE_CHECK   VALUE   TAGS
0   2020-06-24T02:00:05.441Z    kubeflow-vm vm.azm.ms/map   Computer    Heartbeat   1   {"vm.azm.ms/processIds":["p-96566f30b8066a6479008755c528d7920511edc8","p-9f6667971df49fed675576b8f936cc45a61d242d","p-cfc973bcf0a32b902410a7b16cd977d6bb264e62","p-39a51e264bf790ec9e4a6902ead00101c1e78c97","p-d63478488b88c35f85a2c11e07642dddec84ef62","p-ce8cf40e9b45c9db18007f181460e21587af3267","p-e2643b874c714b4dd182003298ad59268f7f6b5b","p-0efa4aa396315bfcd87632237460ab0c12124c46","p-642d2b7e86ff01c62bc11f858e074e741d54d37b","p-0a3fbb9d81230bee9daaa2ce8262bb5357debb69","p-f61381ae6a9c8cdad1f241c9c456015658a8f925","p-f3f604a0313bc1778e69c9203a0162d1abfedad2","p-6dec6d0558740906471b6d3ee920cce37faeca70","p-27613669fcf7faaeef5023acc6505973e12d2db5","p-d97d079b692dcb81adb5ed5dc48d29c82ef6f93a","p-44507943475c4fb04f09595617020da7ac2c388c"]}

尝试用python获取这个,但是我们不能,请您帮忙
将数据推送到Dataframe或表中

hi3rlvi2

hi3rlvi21#

这个 .option('escape','"') 在类似的情况下帮助过我:


# .option('escape','"') is crucial for dealing with commas inside a field

df = spark.read.format("csv").option("sep", ",").options(header= "true", inferschema='true').option('escape','"').load(path)
ncecgwcz

ncecgwcz2#

您可以通过以下步骤来实现这一点。
步骤1:声明路径

path= "/FileStore/tables/samplearray.csv"

步骤2:使用下面的escape选项加载到Dataframe中。
转义:转义字符。默认情况下,但可以设置为任何字符。将写入转义引号字符。

df = spark.read.format("csv").option("sep", ",").options(header= "true", inferschema='true').option('escape','"').load(path)

第三步:显示Dataframe。

相关问题