我是新來的pyspark。我想從輸入文件中讀取特定的列。我知道如何在熊貓中做到這一點如何閱讀pyspark中的特定列?
df=pd.read_csv('file.csv',usecols=[0,1,2])
但是在pyspark中有沒有類似於這個操作的功能?
我是新來的pyspark。我想從輸入文件中讀取特定的列。我知道如何在熊貓中做到這一點如何閱讀pyspark中的特定列?
df=pd.read_csv('file.csv',usecols=[0,1,2])
但是在pyspark中有沒有類似於這個操作的功能?
讀一個CSV文件通常不是直線前進的@ zlidime的回答暗示。
如果該行在列內容中有;
個字符會怎麼樣?然後你需要解析引號,並且事先知道引用字符是什麼。 或者,您可能想要跳過標題,或者解析它以獲取列名稱。
相反,如前所述here可以使用dataframes
df = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").load("te2.csv")
以及查詢的列,您可以使用:
df.col("col_1").cast("int")
嗨,你可以使用地圖來選擇特定的列
from pyspark import SQLContext
from pyspark import SparkConf, SparkContext
conf = SparkConf().setAppName("ReadCSV")
sc = SparkContext(conf=conf)
sqlctx = SQLContext(sc)
df=sc.textFile("te2.csv") \
.map(lambda line: line.split(";")) \
.map(lambda line: (line[0],line[3])) \
.toDF()