问题标签 [spark-koalas]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
345 浏览

python - 使用考拉对空值求和

使用考拉时,对所有 Null / NaN 值的数据帧求和的好方法是什么?

或以另一种方式陈述

我如何按空值总数的列返回一个列表。如果可能,我试图避免将数据框转换为 spark 或 pandas。

注意:.sum()忽略考拉中的空值(skipna:boolean,默认 True - 不能更改为 False)。所以跑步df1.isnull().sum()是不可能的

numpy 被列为替代方案,但由于数据框位于考拉中,我观察到 .sum() 仍然省略了 nan 值。

免责声明:我知道我可以在 Spark 上运行 pandas,但我知道这会适得其反。我犹豫从 Spark 或 Pandas 数据帧中求和,然后将数据帧转换为考拉(我认为这又是浪费资源)。我正在使用一个包含 73 列和 4m 行的数据集。

0 投票
0 回答
153 浏览

python - 从熊猫到考拉再到 CSV 时,如何保留时区感知时间戳?

如何让考拉在时区感知的熊猫时间戳中保留时区信息?

看看它+00:00到底是如何包含 的,而 dtype 是datetime64[ns, UTC]. 这就是我想要的。

现在我把它转换成考拉:

它丢失了时区信息,并减去了 6 个小时。不知道为什么,因为我在美国 CDT,你会认为它会ADD 5小时而不是SUBCTRACT 6。此外,现在当我将其写入 CSV 时:

它通过附加减去另外六个小时-06:00

因此,在从 pandas -> koalas -> CSV 开始之后,我的时间戳已经损失了 12 个完整小时:开始的时候2018-11-06 14:00:00+00:00变成了2018-11-06T08:00:00.000-06:00

0 投票
2 回答
1003 浏览

dataframe - 从数据块中的大型 pyspark 数据帧或 koalas 数据帧返回一行的最快方法是什么?

我在数据块笔记本上的考拉中有一个大数据框(2000 万行,35 列)。我已经使用 python 对其执行了一些转换和加入(合并)操作,例如:

在这些操作之后,我想显示一些数据帧的行来验证生成的数据帧。我试图打印/显示这个大数据帧的 1-5 行,但由于 spark 的惰性评估性质,所有打印命令都会启动 6-12 个 spark 作业并永远运行,之后集群进入不可用状态,然后什么都没发生。

还尝试转换为火花数据框,然后尝试:

我使用的集群配置是8worker_4core_8gb,这意味着每个工作节点和驱动程序节点是8.0 GB 内存、4 个内核、0.5 DBU在 Databricks 运行时版本:7.0(包括 Apache Spark 3.0.0、Scala 2.12)

有人可以通过建议一种更快、更快的方法来获取/打印大数据帧的一行并且不等待处理整个 2000 万行数据帧来提供帮助。

0 投票
1 回答
946 浏览

pandas - How change the value in a koalas dataframe based in a condition

I am using Koalas and I want to change the value of a column based on a condition.

In pandas I can do that using:

I am trying to use the same in Koalas, but I have this error:

How could I do the same operation in Koalas?

UPDATE

Following this question: Assign Koalas Column from Numpy Result I have done:

But now I have this error:

Why is trying to use pandas?

0 投票
1 回答
152 浏览

spark-koalas - 比较两个考拉数据框以进行测试

Pandas 有一个测试模块,其中包括assert_frames_equal. 考拉有没有类似的东西?

我正在编写对考拉数据帧的一整套转换的测试。起初,由于我的测试 csv 文件只有几行(<10),我考虑只使用 pandas。不幸的是,这些文件非常宽(接近 200 列)并且具有各种数据类型,这些数据类型在 spark 读取文件时指定。由于 pandas 的类型规范与 koalas 的类型规范非常不同,除了我们已经为 spark. 这就是为什么我们决定使用 spark 和 koalas 为测试创建数据帧会更有效。但是,我在文档中找不到一种比较数据框的方法,以查看转换的结果是否与我们创建的预期结果相同。

0 投票
0 回答
318 浏览

python - PandasNotImplementedError:在 Koalas DataFrame 中使用嵌套的 np.where() 返回错误

我正在将用 Pandas 编写的代码转换为 Koalas,但是在使用 numpy 时遇到了错误,其中:

返回错误:

如果我尝试将 Koalas 数据帧转换为to_numpy()toPandas()保持代码不变,我就会耗尽内存。这段代码中有很多嵌套的 np.where() 语句,以及我非常不想重写的 numpy 的许多其他用途。

我不清楚是否有一种简单的方法可以np.where()使用考拉数据框将这些(或任何其他 numpy 语句)保留在代码中。

我知道有一种模拟np.where()使用的方法,df.assign(flag=())但我不清楚如何使用该方法来模拟嵌套条件。我的尝试如下:

错误:PicklingError: Could not serialize object: TypeError: can't pickle _thread.RLock objects

0 投票
2 回答
276 浏览

python - 如何计算不同时期的平均股价

我正在尝试根据不同时期(周、月、年)计算股票的平均开盘价。

在这里您可以看到我的 df 的一部分:我的数据框(完整的 df 有 987 行)

首先,我试图逐周计算平均开盘价。我找到了一个解决方案,但它是不可持续的(我的电脑花了 5 分钟才完成计算)。这里是 :

你能帮我改进我的解决方案(主要是执行时间)吗?另外,例如,我想直接向我的 df 添加一列,其中包含每周的结果,而不是将结果放入数组中。

我不允许使用 pandas,我只能使用 pyspark 和 koalas。

0 投票
0 回答
194 浏览

pyspark - 使用 Pyspark 的 HIVE JDBC 连接将列名作为行值返回

我正在使用 Pyspark 连接到 HIVE 并获取一些数据。问题是它返回所有具有列名值的行。它返回正确的列名。只有行值不正确。

这是我的代码

代码输出:

0 投票
1 回答
1411 浏览

python - 这是什么意思 ?警告:root:'PYARROW_IGNORE_TIMEZONE' 环境变量未设置

我在 Jupyter Notebook 上使用 Python 工作,我收到了以下警告:

WARNING:root:'PYARROW_IGNORE_TIMEZONE' environment variable was not set.

我试图删除它,但我不能。正如我在一些论坛上看到的那样,我尝试将 PYARROW_IGNORE_TIMEZONE 设置为 1,但它不起作用。

这是我的代码:

它出什么问题了 ?

我正在使用火花和考拉。

0 投票
1 回答
150 浏览

python - 有比 dt.weekofyear 更好的解决方案吗?

有比 更好的解决方案df['weekofyear'] = df['date'].dt.weekofyear吗?

这个解决方案的问题是,有时,第 n 年最后一周之后但第 n+1 年第一周之前的天数被计为第 1 周,而不是第 0 周。

我正在使用 pyspark 和考拉(不允许熊猫)。

这是一个例子:

有问题的df

如您所见,第一列是日期,第二列是星期,第三列是月份,最后一列是年份。