小编ad_*_*d_s的帖子

火花数据帧丢弃重复并保持第一

问题:在丢弃重复项时,在pandas中,您可以指定要保留的列.Spark Dataframes中是否有等价物?

熊猫:

df.sort_values('actual_datetime', ascending=False).drop_duplicates(subset=['scheduled_datetime', 'flt_flightnumber'], keep='first')
Run Code Online (Sandbox Code Playgroud)

Spark数据帧(我使用Spark 1.6.0)没有keep选项

df.orderBy(['actual_datetime']).dropDuplicates(subset=['scheduled_datetime', 'flt_flightnumber'])
Run Code Online (Sandbox Code Playgroud)

想象一下'scheduled_datetime'和'flt_flightnumber'是第6,17列.通过基于这些列的值创建密钥,我们还可以进行重复数据删除

def get_key(x):
    return "{0}{1}".format(x[6],x[17])

df= df.map(lambda x: (get_key(x),x)).reduceByKey(lambda x,y: (x))
Run Code Online (Sandbox Code Playgroud)

但如何指定保留第一行并摆脱其他重复?最后一排怎么样?

duplicates dataframe apache-spark

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

PySpark使用dict创建新列

使用Spark 1.6,我有一个Spark DataFrame column(名为let col1),其值为A,B,C,DS,DNS,E,F,G和H,我想col2dict下面的值创建一个新列(比方说),我该如何映射?(所以''A'需要映射到'S'等......"

dict = {'A': 'S', 'B': 'S', 'C': 'S', 'DS': 'S', 'DNS': 'S', 'E': 'NS', 'F': 'NS', 'G': 'NS', 'H': 'NS'}
Run Code Online (Sandbox Code Playgroud)

python dictionary apache-spark apache-spark-sql pyspark

13
推荐指数
2
解决办法
2万
查看次数

基于行值的seaborn热图颜色方案

我有一个数据帧,部分复制如下:

import pandas as pd
import numpy as np
tab = pd.DataFrame(np.array([[ 46,  39,  25,  29,  21,  12,  33,  32,  70, 109, 144, 158, 161,
    184, 163, 113, 117,  82,  76,  88,  77,  76,  64,  35],
   [ 39,  33,  29,  29,  26,  14,  25,  33,  60,  83, 126, 117, 111,
    148, 141, 104,  92,  75,  78,  74,  63,  67,  52,  39],
   [ 30,  27,  14,  11,  20,  17,  21,  31,  48,  62,  83,  78,  88,
     90,  80,  67,  53,  61, …
Run Code Online (Sandbox Code Playgroud)

python color-scheme heatmap seaborn

6
推荐指数
1
解决办法
2718
查看次数

GGPLOT2:如何在ggplot()脚本中绘制特定的选择

这是一个名为大型数据集的高峰P,其中有10个特许经营者(CS)具有不同的商店(SHP),其中包含多个数值.数据集按周(WK)2 tm 52 列出它们.它创建一个大文件.只有6个第一行的峰值:

WK,MND,CS,SHP,RevCY,RevLY,TCY,TLY,ACY,ALY
=========================================
2,JAN,AAA,AAA Shop 1,16834,16686,1837,1983,2853,3002 

2,JAN,AAA,AAA Shop 2,95919,114696,9742,11813,20521,24673

2,JAN,BBB, BBB shop 1,93428,92212,7647,7857,18436,17984

2,JAN,BBB, BBB Shop 2,30600,35831,2748,3063,5579,6408

2,JAN,CCC, CCC Shop 1, 65229,78761,6074,7172,13852,16706

2,JAN,CCC, CCC Shop 2,465,754,73,118,92,162
Run Code Online (Sandbox Code Playgroud)

我很难只绘制关注fi的值SHP==AAA.

p <- ggplot(P, aes(WK, RevCY)) + geom_bar(stat="identity")
Run Code Online (Sandbox Code Playgroud)

这是所有商店和所有商店的密谋CS.因此,基本问题是要了解我如何只绘制商店(SHP)CS=AAA.让我们说代码中WKx轴和RevCYy轴上的周()ggplot() + geom_bar(stat="identity").

这是正确的方向吗?:

p <- ggplot(P[P$CS=="AAA"], aes(WK, RevCY)) + geom_bar(stat="identity")
Run Code Online (Sandbox Code Playgroud)

因此,无需创建各种子集并直接进入ggplot()代码.希望我的问题很明确.

r ggplot2

2
推荐指数
1
解决办法
2万
查看次数