小编Sha*_*nda的帖子

Pyspark:如何将 spark 数据帧转换为 json 并将其另存为 json 文件?

我正在尝试将我的 pyspark sql 数据帧转换为 json,然后另存为文件。

df_final = df_final.union(join_df)
Run Code Online (Sandbox Code Playgroud)

df_final 包含这样的值:

在此处输入图片说明

我试过这样的事情。但它创建了一个无效的 json。

df_final.coalesce(1).write.format('json').save(data_output_file+"createjson.json", overwrite=True)

{"Variable":"Col1","Min":"20","Max":"30"}
{"Variable":"Col2","Min":"25,"Max":"40"}
Run Code Online (Sandbox Code Playgroud)

我预期的文件应该有如下数据:

[
{"Variable":"Col1",
"Min":"20",
"Max":"30"},
{"Variable":"Col2",
"Min":"25,
"Max":"40"}]
Run Code Online (Sandbox Code Playgroud)

python-3.x apache-spark-sql pyspark pyspark-sql

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

SQL Server中的NVARCHAR(MAX)大小

当我将列定义为时NVARCHAR(MAX),我无法索引该列.但我当然无法定义列,NVARCHAR(4000)因为我假设数据字符串有时会更长.

任何人都可以建议如何使用NVARCHAR(MAX)数据定义索引列,还是可以将长度从4000增加到更多?

sql sql-server sql-server-2005 sql-server-2008

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

在蜂巢中得到错误

当我连接到ireport时,如果在hive shell中显示表格,则会出现此错误:

元数据错误:java.lang.RuntimeException:无法实例化org.apache.hadoop.hive.metastore.HiveMetaStoreClient FAILED:执行错误,从org.apache.hadoop.hive.ql.exec.DDLTask返回代码1

hadoop hive ireport

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

如何使用格式MMM/DD/YY或MMM/DD/YYYY验证日期字段?

我的字段包含字符串值,如JUL/11/2017,JAN/11/17.虽然它是一个有效的字段,但我无法使用is_date函数对其进行验证

SET DATEFORMAT MDY;  
if isdate('JUL/11/2017')=1
print 'VALID_DATE'
else
print 'invalid date'
Run Code Online (Sandbox Code Playgroud)

如果字段值为DD/MMM/YY或DD/MMM/YYYY,则可以正常工作.任何人都可以帮我验证这个领域.

注意:我也尝试过使用set语言选项.

sql sql-server sql-server-2005 sql-server-2008

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

PySpark- 如何使用 Pyspark 计算每个字段的最小值、最大值?

我试图找到由 sql 语句产生的每个字段的 min 、 max 并将其写入一个 csv 文件。我试图以低于方式获得结果。能否请你帮忙。我已经用 python 编写过,但现在尝试将其转换为 pyspark 以直接在 hadoop 集群中运行

在此处输入图片说明

from pyspark.sql.functions import max, min, mean, stddev
from pyspark import SparkContext
sc =SparkContext()
from pyspark.sql import HiveContext
hive_context = HiveContext(sc)
#bank = hive_context.table("cip_utilities.file_upload_temp")
data=hive_context.sql("select * from cip_utilities.cdm_variables_dict")
hive_context.sql("describe cip_utilities.cdm_variables_dict").registerTempTable("schema_def")
temp_data=hive_context.sql("select * from schema_def")
temp_data.show()
data1=hive_context.sql("select col_name from schema_def where data_type<>'string'")
colum_names_as_python_list_of_rows = data1.collect()
#data1.show()
for line in colum_names_as_python_list_of_rows:
        #print value in MyCol1 for each row                
        ---Here i need to calculate min, max, mean etc for …
Run Code Online (Sandbox Code Playgroud)

python-3.x apache-spark apache-spark-sql pyspark pyspark-sql

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

PySpark:如何从 spark 数据框创建嵌套的 JSON?

我正在尝试从我的 spark 数据帧创建一个嵌套的 json,它具有以下结构的数据。下面的代码正在创建一个带有键和值的简单 json。能否请你帮忙

df.coalesce(1).write.format('json').save(data_output_file+"createjson.json", overwrite=True)
Run Code Online (Sandbox Code Playgroud)

更新 1:根据@MaxU 的回答,我将 spark 数据框转换为 pandas 并使用了 group by。它将最后两个字段放入嵌套数组中。我如何首先将类别和计数放在嵌套数组中,然后在该数组中放入子类别和计数。

示例文本数据:

Vendor_Name,count,Categories,Category_Count,Subcategory,Subcategory_Count
Vendor1,10,Category 1,4,Sub Category 1,1
Vendor1,10,Category 1,4,Sub Category 2,2
Vendor1,10,Category 1,4,Sub Category 3,3
Vendor1,10,Category 1,4,Sub Category 4,4

j = (data_pd.groupby(['vendor_name','vendor_Cnt','Category','Category_cnt'], as_index=False)
             .apply(lambda x: x[['Subcategory','subcategory_cnt']].to_dict('r'))
             .reset_index()
             .rename(columns={0:'subcategories'})
             .to_json(orient='records'))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

[{
        "vendor_name": "Vendor 1",
        "count": 10,
        "categories": [{
            "name": "Category 1",
            "count": 4,
            "subCategories": [{
                    "name": "Sub Category 1",
                    "count": 1
                },
                {
                    "name": "Sub Category 2",
                    "count": 1
                },
                {
                    "name": "Sub Category 3",
                    "count": …
Run Code Online (Sandbox Code Playgroud)

python-3.x apache-spark pyspark pyspark-sql

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