我有一个excel文件,看起来像这样:
Header3包含如下所示的JSON字符串
[
{"key1":"123","key2":"Value1"},
{"key1":"123","key2":"Value2"},
{"key1":"123","key2":"Value3"}
]
我想解析JSON Header3列,并为每个键创建一个列,其中键的名称附加有键2的值,整个文件中的键始终相同。
结束数据帧应如下所示:
实例:
需要成为:
在进入花哨的东西之前,我试图至少规范化数据,但我得到了一个空序列。
df = pd.read_excel('test.xlsx')
pd.json_normalize(df.JSON)
Output:
0
1
2
3
4
5
...
188 rows x 0 columns
无法对其进行规范化,因为它是作为字符串从Excel加载的。试试这个:
import json
s = df["JSON"].apply(json.loads).explode()
tmp = (
pd.DataFrame(s.to_list(), index=s.index)
.set_index("card", append=True)
.unstack()
)
tmp.columns = [".".join(col) for col in tmp.columns]
pd.concat([df[["Company"]], tmp], axis=1)
卡*
列看起来有点奇怪。如果您知道所指的列,那么您已经知道它的值,那么为什么要将其包含在输出数据帧中?
感兴趣的是在同一pyspark数据帧中将列表的这一列拆分为多列的scala-spark实现 给定该数据帧: 我想要一个新的数据帧,它包含分解值并映射到我提供的列名称: 尝试: 但它的格式错误,我不知道如何映射到我的 colNames 列表: 在上面的链接中,python的解决方案是使用列表理解: 但它没有显示如何使用提供的列名列表,因为列名只是列的索引。
我在Spark中有一个数据框架,其中包含许多列和我定义的udf。我想要返回相同的数据帧,除了一列被转换。此外,我的udf接收字符串并返回时间戳。有一个简单的方法可以做到这一点吗?我试过了 但这返回一个RDD,并且只返回转换后的列。
我想用另一个DF的行中的名称替换DF的一些列名称 如何用df2中的“狗”和“猫”替换df1中的“T1”和“T2”?
我有以下,其值是字典: 我希望获得所需的输出: 我怎样才能把字典分成单独的列呢? 我见过使用函数拆分字符串的列,但不确定如何将其应用于字典作为值的情况。
问题内容: 那是我的JSON数组,但我想将fruits字符串中的所有值转换为Python列表。正确的做法是什么? 问题答案: 您拥有了所需的一切。将是一个字典,将是一个列表
问题内容: 我有一个字典列表,看起来像这样: 等等。列表中可能还有更多文档。我需要将它们转换为一个JSON文档,可以通过bottle返回该文档,但我不知道该怎么做。请帮忙。我在该网站上看到了类似的问题,但是我无法理解那里的解决方案。 问题答案: 使用json库 顺便说一句,您可能会考虑将变量列表更改为另一个名称,这是用于创建列表的内置函数,如果不更改变量名称,则可能会出现一些意外行为或错误代码。