小编Pun*_*thi的帖子

在dask数据帧中创建if-else条件列

我需要创建一个基于dask数据帧的某些条件的列.在熊猫中它是相当简单的:

ddf['TEST_VAR'] = ['THIS' if x == 200607 else  
              'NOT THIS' if x == 200608 else 
              'THAT' if x == 200609 else 'NONE'  
              for x in ddf['shop_week'] ]
Run Code Online (Sandbox Code Playgroud)

在dask中,我必须做同样的事情,如下所示:

def f(x):
    if x == 200607:
         y= 'THIS'
    elif x == 200608 :
         y= 'THAT'
    else :
         y= 1 
    return y

ddf1 = ddf.assign(col1 = list(ddf.shop_week.apply(f).compute()))
ddf1.compute()
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 是否有更好/更直接的方法来实现它?
  2. 我无法修改第一个数据帧ddf,我需要创建ddf1来改变是dask dataframe的Immutable对象吗?

python pandas dask

8
推荐指数
1
解决办法
1042
查看次数

来自Kafka Consumer的Spark Streaming

我可能需要和卡夫卡一起工作,我对它很陌生.我知道有些Kafka制作人会将日志(在Kafka中称为事件或消息或记录)发布到Kafka主题.

我需要通过消费者阅读卡夫卡主题.我是否需要首先设置消费者API然后我可以使用SparkStreaming Context(PySpark)进行流式传输,或者我可以直接使用KafkaUtils模块来读取kafka主题?

如果我需要设置Kafka消费者应用程序,我该怎么做?请您分享正确文档的链接.

提前致谢!!

apache-kafka apache-spark spark-streaming kafka-consumer-api pyspark

5
推荐指数
1
解决办法
817
查看次数