雑記 in hibernation

頭の整理と備忘録

Spark

PySparkでfillna()

毎回忘れるPySparkでの欠損処理の書き方と注意点について、個人的な備忘録です。 1. 前提 こちら相当の準備ができていることを前提にします Google ColaboratoryでPySpark環境構築(v3.2.1) - 雑記 in hibernation 2. PySparkの欠損補完 こんな感じの適当な欠…

【あるある】数値をちゃんとソートできないと思ったら文字型になってた

タイトル以上でも以下でもありません。個人的あるあるなんですが、たまにしか引っかからない分、毎回原因に気づくまでに時間がかかるんですよね、、、、 どういうことかと言いますと、 こんな感じのデータがありまして、、、、 id payment 0 aaa 10000 1 bbb…

PySparkデータフレームをscikit-learnのモデルで推論してみる(pandas_udf)

scikit-learnで学習したモデルを使ってPySparkのデータフレームに対する推論を行う方法はいくつかあって、例えば単純な方法としてはデータフレームを.toPandas()でPandasのデータフレームに変換してからモデルに入力する手があります。しかし、この方法だとS…

Google ColaboratoryでPySpark環境構築(v3.2.1)

以前GoogleColabでのPySpark環境構築の方法をまとめたのですが、最近(v3.x.x以降?)はもっと楽にインストールできるっぽいです。ってことで、手順を更新します。 前回の↓ toeming.hatenablog.com 早速ですが、以下notebook上での処理手順 1. Sparkモジュー…

Pysparkで(個人的に)忘れがちなtipsメモ

たまーにPysparkを使うことがあるのですが、たまーにすぎて使う頃には前回までの習熟度が完全にリセットされている、という非効率を繰り返している今日この頃。ということで、毎回ど忘れして無駄に遠回りしてしまいがちなtips(と言うほど大袈裟な情報ではな…

Pysparkで累積構成比を計算する

PySparkのDataframeでの累積構成比の計算に戸惑ったのですが、ググっても意外とすんなりいい感じの情報にありつけなかったので、備忘録として残しておきます。 Window関数がわかってりゃあなんてことないとのない内容だろうとは思いますが、お勉強も兼ねて。…

SparkにおけるRDDの遅延評価と永続化

Sparkを習熟する上でRDD(とDataframe)の永続化のメリットが理解しにくかったので、Sparkの特性である遅延評価と永続化について簡単にまとめておきます。 (正しく理解できているか自信ないので、内容に誤りがありましたらご指摘いただけると幸いです) な…

Google ColaboratoryでPySpark環境構築

個人的にライブラリやらなんやらを試してみる際にGoogle Colaboratoryを使うことが多いのですが、今回はSpark習熟のためにGoogle Colaboratoryのnotebook上でPysparkを実行できるように環境構築したので、備忘録としてその過程を記録しておきます。正直なと…