标签: apache-spark-sql

如何在DataFrame Spark中的cloumn中进行修剪操作

我想从时间戳修剪时间(这是数据框中的一列)并仅获取小时值并存储在数据框的新列中.请帮忙

apache-spark-sql

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

使用PySpark删除和替换字符

我有一个数据框,并希望删除所有括号,并替换为两个连字符.

之前:

+------------+
|  dob_concat|
+------------+
|[1983][6][3]|
+------------+
Run Code Online (Sandbox Code Playgroud)

后:

+------------+
| dob_concat |
+------------+
| 1983-6-3   |
+------------+
Run Code Online (Sandbox Code Playgroud)

apache-spark-sql pyspark databricks

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

如何在数据框中投射一列?

我正在从 hbase 获取数据并将其转换为数据帧。现在,我在数据框中有一列是string数据类型。但我需要将其数据类型转换为Int.

尝试了下面的代码,但它给我一个错误

df.withColumn("order", 'order.cast(int)')
Run Code Online (Sandbox Code Playgroud)

我面临的错误如下

error:col should be column
Run Code Online (Sandbox Code Playgroud)

我在这里给出了正确的列名,我需要在 pyspark 中更改上述代码的语法吗?

dataframe apache-spark apache-spark-sql pyspark

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

如何在scala中解析数据框中的json列

我有一个数据框,它是带有 json 字符串的 json 列。下面的例子。有 3 列 - a、b、c。列 c 是 stringType

| a         | b    |           c                       |
--------------------------------------------------------
|77         |ABC   |    {"12549":38,"333513":39}       |
|78         |ABC   |    {"12540":38,"333513":39}       |
Run Code Online (Sandbox Code Playgroud)

我想让它们成为数据框的列(枢轴)。下面的例子 -

| a         | b    | 12549  | 333513 | 12540
---------------------------------------------
|77         |ABC   |38      |39      | null
|77         |ABC   | null   |39      | 38
Run Code Online (Sandbox Code Playgroud)

json scala apache-spark apache-spark-sql

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

在 Spark 上使用 Scala 拆分 Dataframe 中的字符串

我有一个包含 100 多列的日志文件。其中我只需要两列“_raw”和“_time”,所以我创建了将日志文件加载为“csv”DF。

第1步:

scala> val log = spark.read.format("csv").option("inferSchema", "true").option("header", "true").load("soa_prod_diag_10_jan.csv")
log: org.apache.spark.sql.DataFrame = [ARRAffinity: string, CoordinatorNonSecureURL: string ... 126 more fields]
Run Code Online (Sandbox Code Playgroud)

第 2 步:我将 DF 注册为临时表 log.createOrReplaceTempView("logs"

第 3 步:我提取了两个必需的列“_raw”和“_time”

scala> val sqlDF = spark.sql("select _raw, _time from logs")
sqlDF: org.apache.spark.sql.DataFrame = [_raw: string, _time: string]

scala> sqlDF.show(1, false)
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----+
|_raw                                                                                                                                                                                                                                                                                                                                                                                                |_time|
+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----+
|[2019-01-10T23:59:59.998-06:00] [xx_yyy_zz_sss_ra10] [ERROR] [OSB-473003] [oracle.osb.statistics.statistics] [tid: [ACTIVE].ExecuteThread: '28' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] [ecid: 92b39a8b-8234-4d19-9ac7-4908dc79c5ed-0000bd0b,0] [partition-name: DOMAIN] [tenant-name: GLOBAL] Aggregation Server Not Available. Failed …
Run Code Online (Sandbox Code Playgroud)

scala apache-spark apache-spark-sql

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