我有这样的数据data = [[1.1, 1.2], [1.3, 1.4], [1.5, 1.6]]我想创建一个 PySpark 数据框
我已经使用了
dataframe = SQLContext.createDataFrame(data, ['features'])
Run Code Online (Sandbox Code Playgroud)
但我总是得到
dataframe = SQLContext.createDataFrame(data, ['features'])
Run Code Online (Sandbox Code Playgroud)
我怎样才能得到如下结果?
+--------+---+
|features| _2|
+--------+---+
| 1.1|1.2|
| 1.3|1.4|
| 1.5|1.6|
+--------+---+
Run Code Online (Sandbox Code Playgroud) 我需要转换一个 DataFrame,其中一列包含一个元组列表,每个元组中的每个项目都必须是一个单独的列。
这是 Pandas 中的一个示例和解决方案:
import pandas as pd
df_dict = {
'a': {
"1": "stuff", "2": "stuff2"
},
"d": {
"1": [(1, 2), (3, 4)], "2": [(1, 2), (3, 4)]
}
}
df = pd.DataFrame.from_dict(df_dict)
print(df) # intial structure
a d
1 stuff [(1, 2), (3, 4)]
2 stuff2 [(1, 2), (3, 4)]
# first transformation, let's separate each list item into a new row
row_breakdown = df.set_index(["a"])["d"].apply(pd.Series).stack()
print(row_breakdown)
a
stuff 0 (1, 2)
1 (3, 4)
stuff2 0 …Run Code Online (Sandbox Code Playgroud) 我有输入
{'A':'1','B':'1'}
Run Code Online (Sandbox Code Playgroud)
我需要的输出
+----+----+
|A |B |
+----+----+
| 1| 2|
+----+----+
Run Code Online (Sandbox Code Playgroud)
我试过的代码如下。这不起作用
v = {'A': '1','B':'2'}
rdd = sc.parallelize(v.values())
df = spark.createDataFrame(rdd, list(v.keys()))
df.show()
Run Code Online (Sandbox Code Playgroud)