python - 如何将列从数据框转换为字符串?
问题描述
我使用了转换为 json 的 api,用 pandas 规范化,并用 pyspark 转换为数据帧。
但我不能改变列,无论是形式还是任何东西,我都不能选择它们。
我想知道我哪里错了!
import requests
import json
import pandas as pd
import pyspark.sql.functions as F
import os
from pyspark.sql.types import DoubleType
from pyspark.sql import types
base_url = "https://api.talkwalker.com/api/v1/search/results"
token = "demo"
search = "cats"
url = base_url + "?access_token=" + token + "&q=" + search + "&pretty=true&hpp=1"
response = requests.get(url)
#print(response.text)
js = response.json()
df1 = pd.json_normalize(js['result_content'],['data'])
pdf = pd.DataFrame(df1)
df = spark.createDataFrame(pdf)
display(df.select('data.url'))
问题在选择。
解决方案
默认情况下,Spark 将带有点的列名解释为结构元素,因此如果要获取名称中包含点的列,则需要将名称用反引号括起来。尝试做df.select('`data.url`')
,看看是否有效。
推荐阅读
- javascript - Javascript循环初始化中定义的变量范围?
- c# - 从 PipeReader 读取超时
- python - 如何让 eve 以编程方式创建 DOMAIN 端点
- python - 如何在 Python json 中以正确的方式序列化和反序列化我的自定义类型列表?
- javascript - 定义的函数怎么可能是未定义的?
- c# - 使用 C# 在启动窗口上的应用程序中启动一个新线程
- c# - 在 Windows 操作中心单击启动 UWP 应用程序表单 toast 按钮
- c - C-getaddrinfo()
- wpf - 是否可以在 Visual Studio 2019 的 WPF 的 XAML 设计器中显示隐藏元素?
- node.js - vscode 通过扩展提供指向 json schem 的链接