質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Spark

Spark(Apache Spark)とは、膨大なデータを迅速、柔軟に分散並行処理を行うフレームワークです。分析ツールであるApache Hadoopと比較し、最大で100倍の速度でデータ処理ができるとされています。

Q&A

解決済

1回答

2561閲覧

pysparkで、各レコードが保持する2つの値に対して大きい方の値を取得して新規カラムとして保持する方法

milcovich

総合スコア11

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Spark

Spark(Apache Spark)とは、膨大なデータを迅速、柔軟に分散並行処理を行うフレームワークです。分析ツールであるApache Hadoopと比較し、最大で100倍の速度でデータ処理ができるとされています。

0グッド

0クリップ

投稿2021/08/21 13:01

標題の通り、pyapark Dataframeについて、2つの列の値を比較して新しい列を作成する方法をご教授いただきたいです。

python

1s = """a,b 210,1 39,2 48,3 57,4 66,5 75,6 84,7 93,8 102,9 111,10""" 12df = spark.read.csv(StringIO(s), parse_dates=['entry_time']) 13# 各業に対してdf[a], df[b]のうち大きい方の値を採用し、df[c]としてカラム追加

psandas Dataframeであれば

python

1iimport numpy as np 2 3df['C'] = np.where(df['A']>df['B'], df['A'], df['B']) 4

という形で実現可能かと思いますが、pysparkで同様の操作を行うためのメソッド等御座いますでしょうか?
どうぞよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

下記記事が参考になるかと思います。

Pyspark dataframe操作

列の追加

case whenの様に列を追加する
.withColumn('new_column_name', when(col('colname') === "hoge", 1).otherwise(0))

ドキュメントは下記です。
DataFrame.withColumn(colName, col)

Column.when(condition, value)

投稿2021/08/21 13:40

meg_

総合スコア10760

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問