PySpark入門三 常用的函式 上

2021-10-24 01:53:20 字數 1395 閱讀 5645

在jupyter notebook中如何使用pyspark? 

開啟anaconda prompt 並使用pip 安裝好pyspark第三方庫。

pip install pyspark
# 導包

from pyspark import sparkcontext

# 建立會話

sc = sparkcontext.getorcreate(

)

# 建立rdd 有兩種方式

# 1. parallelize()建立。這種方式建立的是parallelcollectionrdd.

data = sc.parallelize([1

,2,3

,4])

data = sc.textfile(

'../workdata/data/ast-us-d.xlsx'

)

map類似於python的高階函式,通常情況下與lambda連用,可以看成是對每一行資料的轉換。

# map 函式使用案例

df = data.

map(

lambda x:

int(x)

)

filter() 函式,顧名思義是做篩選,從資料集中選出符合條件的資料集

data_filter = data.

filter

(lambda row:row[12]

==2020

)

flatmap() 工作方法和map() 方法的工作方法類似,但是flatmap() 可以過濾一些格式不正確的記錄。如果遇到錯誤值會返回空列表

data_flatmap = data.flatmap(

lambda x:x +

1)

distinct() 類似於pandas中dataframe的unique() 函式,返回唯一值,不過這是乙個高開銷的方法,應該謹慎使用。

data_distinct = data.

map(

lambda row: row[5]

).distinct(

)

sample() 方法返回資料集的隨機樣本.

# 引數說明:1. 指定取樣是否應該替換 2. 返回資料的分數 3. 偽隨機數產生器的種子

data_sample = data.sample(

false

,0.2

,500

)# 列印隨機數個數

data_sample.count(

)

pyspark 一 常用的轉換操作

map 對rdd中每個元素都執行乙個指定函式從而形成乙個新的rdd from pyspark import sparkconf,sparkcontext sc sparkcontext conf conf def func x return x 2 data 1,2,3,4,5 rdd sc.par...

php入門 常用函式

常用函式 隨機數 echo rand 1 6 echo mt rand 1 6 小數函式 echo floor 5.99 floor 函式向下取整 echo ceil 5.1 ceil 函式向上取整 echo round 5.1 round 函式四捨五入 echo abs 1 abs函式求絕對值 其...

Pandas常用函式入門

python data analysis library或pandas是基於numpy的一種工具,該工具是為了解決資料分析任務而建立的。pandas納入了大量庫和一些標準的資料模型,提供了高效地操作大型資料集所需的工具。pandas提供了大量能使我們快速便捷地處理資料的函式和方法。series是一維...