在pyspark中读取tsv文件
我想读取一个tsv文件,但它没有头。我正在创建自己的模式,然后尝试读取tsv文件,但在应用模式后,它将所有列值显示为null。下面是我的代码和结果在pyspark中读取tsv文件,pyspark,Pyspark,我想读取一个tsv文件,但它没有头。我正在创建自己的模式,然后尝试读取tsv文件,但在应用模式后,它将所有列值显示为null。下面是我的代码和结果 from pyspark.sql.types import StructType,StructField,StringType,IntegerType schema = StructType([StructField("id_code", IntegerType()),StructField("description&q
from pyspark.sql.types import StructType,StructField,StringType,IntegerType
schema = StructType([StructField("id_code", IntegerType()),StructField("description", StringType())])
df=spark.read.csv("C:/Users/HP/Downloads/`connection_type`.tsv",schema=schema)
df.show();
+-------+-----------+
|id_code|description|
+-------+-----------+
| null| null|
| null| null|
| null| null|
| null| null|
| null| null|
+-------+-----------+
如果我只是简单地阅读,而不应用任何模式
df=spark.read.csv("C:/Users/HP/Downloads/connection_type.tsv",sep="/t")
df.show()
+-----------------+
| _c0|
+-----------------+
| 0 Not Specified |
| 1 Modem |
| 2 LAN/Wifi |
| 3 Unknown |
| 4 Mobile Carrier|
+-----------------+
它不是以正确的方式来的。谁能帮我一下吗。我的示例文件是.tsv文件,它有以下记录
0 Specified
1 Modemwifi
2 LAN/Wifi
3 Unknown
4 Mobile user
添加
sep
选项,如果它真的是以制表符分隔的,这将起作用
df = spark.read.option("inferSchema","true").option("sep","\t").csv("test.tsv").show()
+---+-----------+
|_c0| _c1|
+---+-----------+
| 0| Specified|
| 1| Modemwifi|
| 2| LAN/Wifi|
| 3| Unknown|
| 4|Mobile user|
+---+-----------+