在我通过使用窗口和对一组列进行分区来计算pyspark dataframe中每行5行内的平均数量之后 from pyspark.sql import functions as F
prep_df = ...
window = Window.partitionBy([F.col(x) for x in group_list]).rowsBetween(Window.currentRow, Window.currentRow + 4)
consecutive_df = prep_df.withColumn('aveg', F.avg(prep_df['quantity
我有一个名为VIEWS的表,其中包含Id、日期、月份、视频名称、浏览器名称……但我只对Id、日期和月份感兴趣。
ID可以重复,因为用户(ID)可以在多个月内观看多天的视频。
这是对最小日期和最大日期的查询。
SELECT ID, CONCAT(MIN(DAY), '/', MIN(MONTH)) AS MIN_DATE,
CONCAT(MAX(DAY), '/', MAX(MONTH)) AS MAX_DATE,
FROM Views
GROUP BY ID
我想用insert into将这个带有两列(MIN_DATE和MAX_DATE)的select插入到
我正在用HIVE编写代码来创建一个由1300行和6列组成的表:
create table test1 as SELECT cd_screen_function,
SUM(access_count) AS max_count,
MIN(response_time_min) as response_time_min,
AVG(response_time_avg) as response_time_avg,
MAX(response_time_max) as response_time_max,
SUM(response_time_tot) as r
我有列X (string)、Y (string)和Z (浮点)。
我也想
X上的集合
取Z列的最大值
报告列X、Y和Z的所有值
如果列Y的多个值对应于Z列的最大值,则在Y列中取这些值的最大值。
例如,我的表类似于:table1
col X col Y col Z
A 1 5
A 2 10
A 3 10
B 5 15
其结果是:
A 3 10
B 5 15
如果我使用SQL,我会这样做:
select X, Y, Z
from table1
join (select max(Z
我想用lambda实现reduce函数。例如,如果有pyspark数据帧,并且在某些列上,我想要获取那些列值长度在某个范围内的所有记录。如何使用带有lambda的reduce函数实现这一点。我试着用下面的代码来实现它,但我对此不是很确定。 bad_df = reduce(lambda x, (min < f.col(x) < max for x in df.columns if x in col_list)) col_list有我想要检查列值是否在范围内的列的列表。
我有一系列有重复MemberSS字段的行。这是因为在对计划(月份列)进行更改时插入了新行。
我需要以以下方式合并重复的行(假设为新表?):
MonthsCover需要求和(是两个值的和)。
月份列需要将它们的值组合到一个新行中,以便填充所有月份。
我如何做到这一点(我是非常新的访问)?
以下是我最初试图做的事情:
SELECT [Copy Of EmployeesDependents].ID, [Copy Of EmployeesDependents].[Member SSN], Sum([Copy Of EmployeesDependents].[Months Co
我想通过pyspark在spark dataframe的一个向量列中找到最大值的索引。 我的火花是 3.0.0 df: id val (vector (nullable = true))
516 0: 1 1: 10 2: [] 3:[0.162, 0.511, 0.022, ....] 这是一个稀疏向量吗?如何访问数组? [0.162, 0.511, 0.022, ....] 基于How to find the index of the maximum value in a vector column?、How to get the index of the h
我有一个dataframe,我试图在数组列上执行窗口函数。
逻辑如下:按(或窗口分区)对id和filtered列进行分组。计算types列为null的行的最大得分,否则取该行的得分。当得分不等于组的最大得分时,将"NA“添加到列类型中。
val data = spark.createDataFrame(Seq(
(1, "shirt for women", Seq("shirt", "women"), 19.1, "ST"),
(1, "shirt for women", Seq("shir
我尝试使用文字在pyspark中创建一个新列,但当我尝试使用该列执行某些函数时,它显示错误,如下面的AttributeError: 'NoneType' object has no attribute 'show'我的代码是 autodata1=autodata.withColumn('pricePerMPG',(col('PRICE')/(col('MPG-CITY')+col('MPG-HWY')/2))).show(truncate=False)`
autodata1.show()
from
我有一个星火数据库,它看起来有点像这样:
id country date action
1 A 2019-01-01 suppress
1 A 2019-01-02 suppress
2 A 2019-01-03 bid-up
2 A 2019-01-04 bid-down
3 C 2019-01-01 no-action
3 C 2019-01-02 bid-up
4 D 2019-01-01 suppress
我希望通过将“action”列的唯一值按id、cou
我有包含一些数据的json文件,我将这个json转换为pyspark dataframe(我选择了一些列,而不是所有列),这是我的代码: import os
from pyspark import SparkContext
from pyspark.streaming import StreamingContext
from pyspark.sql import SparkSession
import json
from pyspark.sql.functions import col
sc = SparkContext.getOrCreate()
spark = SparkSession
应用程序在一个共享主机中托管在Bluehost中。我尝试在phpMyAdmin中执行以下查询,结果运行良好:
SELECT employee_id , floor(Datediff(max(to_date), min(from_date))/365) As diif FROM `work_experiences` group by employee_id having floor(Datediff(max(to_date), min(from_date))/365) >=15
下面是我的Laravel查询生成器:
$query->groupBy('employee_id
我有以下SQL查询,我想将其转换为pyspark。我想使用两个列pp和gender,并在pyspark中执行以下操作 %sql
SELECT pp
, SUM(CASE WHEN Gender = 'M'
THEN 1.0 ELSE 0.0 END) /
COUNT(1) AS gender_score
, count(1) AS total
FROM df
WHERE gender in ('M', 'F')
GROUP BY pp
HAVING
我正在尝试对包含空值的列的数据帧使用sparkML库的standardScaler。我想保留NULL值,但是当我使用带有mean的标准缩放器时,具有NULL值的列的平均值也变成了null。有没有办法让标准的定标器跳过均值计算的空值(就像向量汇编程序中的handleInvalid选项)? 下面是代码示例 from pyspark.sql import SparkSession
import pyspark.sql.functions as F
sqlContext = SparkSession.builder.appName('test').config("spark.
为什么在查询中向select列表和group添加列会增加返回的行数?例如,下面是我的基本查询,但如果添加列,则返回更多行。添加的列越多,返回的行就越多。似乎只有where子句条件才能控制返回的行。
示例查询:
select pobj_name, max(prev) prev
from pfmc_part
where pmodel in ('PN-DWG', 'NO-DWG') and pstatus = 'RELEASED'
group by pobj_name
order by pobj_name