我遇到了这个:_*表示许多spark-scala答案,但找不到任何文档.实际上是什么意思?这种用法的一个例子就是这个问题的答案
如何在Spark Java中使用isin的DataFrame过滤器?
线:
df.filter(col("something").isin(list: _*)
Run Code Online (Sandbox Code Playgroud) 在 R 中,我可以使用多个数据列汇总数据,如下所示:library(dplyr):
A = B %>%
group_by(col1,col2) %>%
summarize(newcol = sum(col3)/sum(col4))
Run Code Online (Sandbox Code Playgroud)
但是在python的pandas的dataframes中,如何一步执行相同的操作呢?
我可以分两步完成。第1步:
A = B.groupby(['col1','col2']).agg({'col3': 'sum','col4':'sum'})
Run Code Online (Sandbox Code Playgroud)
第2步:
A['newcol'] = A['col3']/A['col4']
Run Code Online (Sandbox Code Playgroud) 我对使用$像select或等的DataFrame运算符中的列引用有点困惑filter.
以下陈述有效:
df.select("app", "renders").show
df.select($"app", $"renders").show
Run Code Online (Sandbox Code Playgroud)
但是,只有以下作品中的第一个声明:
df.filter("renders = 265").show // <-- this works
df.filter($"renders" = 265).show // <-- this does not work (!) Why?!
Run Code Online (Sandbox Code Playgroud)
但是,这又有效:
df.filter($"renders" > 265).show
Run Code Online (Sandbox Code Playgroud)
基本上,$DataFrame的运算符是什么以及何时/应该如何使用它?