小编Ann*_*eso的帖子

对于某些字段,仅保留DataFrame中的重复项

我有这个spark DataFrame:

+---+-----+------+----+------------+------------+
| ID|  ID2|Number|Name|Opening_Hour|Closing_Hour|
+---+-----+------+----+------------+------------+
|ALT|  QWA|     6|null|    08:59:00|    23:30:00|
|ALT|AUTRE|     2|null|    08:58:00|    23:29:00|
|TDR|  QWA|     3|null|    08:57:00|    23:28:00|
|ALT| TEST|     4|null|    08:56:00|    23:27:00|
|ALT|  QWA|     6|null|    08:55:00|    23:26:00|
|ALT|  QWA|     2|null|    08:54:00|    23:25:00|
|ALT|  QWA|     2|null|    08:53:00|    23:24:00|
+---+-----+------+----+------------+------------+
Run Code Online (Sandbox Code Playgroud)

我想得到一个新的数据帧,只有3个字段不是唯一的行"ID","ID2""Number".

这意味着我想要这个DataFrame:

+---+-----+------+----+------------+------------+
| ID|  ID2|Number|Name|Opening_Hour|Closing_Hour|
+---+-----+------+----+------------+------------+
|ALT|  QWA|     6|null|    08:59:00|    23:30:00|
|ALT|  QWA|     2|null|    08:53:00|    23:24:00|
+---+-----+------+----+------------+------------+
Run Code Online (Sandbox Code Playgroud)

或者可能是包含所有重复项的数据框:

+---+-----+------+----+------------+------------+
| ID|  ID2|Number|Name|Opening_Hour|Closing_Hour|
+---+-----+------+----+------------+------------+
|ALT|  QWA|     6|null|    08:59:00|    23:30:00|
|ALT|  QWA|     6|null| …
Run Code Online (Sandbox Code Playgroud)

apache-spark pyspark spark-dataframe

4
推荐指数
3
解决办法
2170
查看次数

从 Scala 中的长(时间戳)获取可读日期的简单方法

我的问题很简单

如果我做:

var start = System.currentTimeMillis
Run Code Online (Sandbox Code Playgroud)

我得到:

start: Long = 1542717303659
Run Code Online (Sandbox Code Playgroud)

我应该怎么做才能让字符串看起来对人眼可读?:

例如:“2018/11/20 13:30:10”

apache scala

4
推荐指数
1
解决办法
3432
查看次数

不能把单个艺术家放在一个以上的人物中

这是我的问题。

我创建了一个绘制圆列表的函数。我需要先用圆 C2 绘制我的圆 C1,然后用 C3 .... 直到 C40。

import matplotlib.pyplot as plt 
from matplotlib.patches import Circle

def plot_circle(Liste_circles):


    fig = plt.figure(figsize=(5,5))   
    ax = fig.add_subplot(111)

    # On définie un fond blanc
    ax.set_facecolor((1, 1, 1))

    ax.set_xlim(-5, 15)
    ax.set_ylim(-6, 12)    

    for c in Liste_circles:
        ax.add_patch(c)

    plt.show()
Run Code Online (Sandbox Code Playgroud)

现在我创建 C1:

C1=Circle(xy=(3, 4), radius=2, fill=False, color='g')
Run Code Online (Sandbox Code Playgroud)

最后我尝试绘制它。
第一个情节有效:

C2=Circle(xy=(6, 3), radius=4, fill=False, color='b')
plot_circle([C1,C2])
Run Code Online (Sandbox Code Playgroud)

第二个失败:

C3=Circle(xy=(7, 2), radius=4, fill=False, color='b')
plot_circle([C1,C3])
Run Code Online (Sandbox Code Playgroud)

有错误:

运行时错误:不能将单个艺术家放入多个图形中

我可以通过以下方式使其工作:

C1=Circle(xy=(3, 4), radius=2, fill=False, color='g')
C3=Circle(xy=(7, 2), radius=4, fill=False, color='b')
plot_circle([C1,C3]) …
Run Code Online (Sandbox Code Playgroud)

plot matplotlib python-3.6

3
推荐指数
1
解决办法
5887
查看次数

pyspark.sql.functions 最大的逆

最大函数有反函数吗?有什么办法可以得到多列的最小值?

如果没有,除了使用 udf 函数之外,您是否知道还有其他方法可以找到它?

谢谢你!

apache-spark-sql pyspark

3
推荐指数
1
解决办法
5637
查看次数

在2个Spark数据框列之间使用“ IS IN”

我有上面的数据框:

from pyspark.sql.types import *

rdd = sc.parallelize([
        ('ALT', ['chien', 'chat'] , 'oiseau'),
        ('ALT', ['oiseau']        , 'oiseau'),
        ('TDR', ['poule','poulet'], 'poule' ),
        ('ALT', ['ours']          , 'chien' ),
        ('ALT', ['paon']          , 'tigre' ),
        ('TDR', ['tigre','lion']  , 'lion'  ),
        ('ALT', ['chat']          ,'chien'  ),
])
schema = StructType([StructField("ClientId",StringType(),True),
                     StructField("Animaux",ArrayType(StringType(),True),True),
                     StructField("Animal",StringType(),True),])
test = rdd.toDF(schema)
test.show()
Run Code Online (Sandbox Code Playgroud)
+--------+---------------+------+
|ClientId|        Animaux|Animal|
+--------+---------------+------+
|     ALT|  [chien, chat]|oiseau|
|     ALT|       [oiseau]|oiseau|
|     TDR|[poule, poulet]| poule|
|     ALT|         [ours]| chien|
|     ALT|         [paon]| tigre|
|     TDR|  [tigre, lion]|  lion|
|     ALT| …
Run Code Online (Sandbox Code Playgroud)

apache-spark apache-spark-sql pyspark pyspark-sql

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

使用 DataFrame 类型在 scala 中定义函数

我有一个简单的问题...我尝试使用一个将数据帧作为参数并返回另一个数据帧的函数

我愿意:

val get_nb_previous_offre : ((DataFrame) => (DataFrame)) = (arg1: DataFrame) => {
   // create new_df using arg1 (=DataFrame I pass in parameter)
      new_df    
} 
Run Code Online (Sandbox Code Playgroud)

我收到错误:

<console>:32: error: not found: type DataFrame
   val get_nb_previous_offre : ((DataFrame) => (DataFrame)) = (arg1: DataFrame) => {
Run Code Online (Sandbox Code Playgroud)

是否需要导入一个库才能使用 DataFrame 作为我的函数的类型?

scala apache-spark

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