Dataframe 使用方括号对pyspark数据框中的列进行子集和/或重新排序是否安全?

Dataframe 使用方括号对pyspark数据框中的列进行子集和/或重新排序是否安全?,dataframe,pyspark,apache-spark-sql,pyspark-sql,databricks,Dataframe,Pyspark,Apache Spark Sql,Pyspark Sql,Databricks,我是pyspark dataframes的新手,希望确保我没有犯愚蠢的错误(我已经被.union而不是.unionByName烧坏了,所以我不想重复类似的事情!) 是否可以使用方括号对pyspark dataframe列进行重新排序和子集划分?通过仔细观察,似乎可以使用熊猫式的双方括号方法对pyspark数据帧中的列进行子集和重新排序。例如: #创建pandas dataframe以转换为pyspark dataframe 歌手={'ID':{0:1,1:2,2:3,3:4,4:5}, 'Na

我是pyspark dataframes的新手,希望确保我没有犯愚蠢的错误(我已经被
.union
而不是
.unionByName
烧坏了,所以我不想重复类似的事情!)

是否可以使用方括号对pyspark dataframe列进行重新排序和子集划分?通过仔细观察,似乎可以使用熊猫式的双方括号方法对pyspark数据帧中的列进行子集和重新排序。例如:


#创建pandas dataframe以转换为pyspark dataframe
歌手={'ID':{0:1,1:2,2:3,3:4,4:5},
'Name':{0:'Maria Callas',1:'Tito Gobbi',2:'Giuseppe Di Stefano',3:'Rolando Panerai',4:'Luigi Alva'},
法赫:{0:'女高音',1:'男中音',2:'男高音',3:'男中音',4:'男高音'},
“出生地”:{0:'美国',1:'意大利',2:'意大利',3:'意大利',4:'秘鲁'}
singers\u pd=pd.DataFrame(singers,columns=singers.keys())
#创建pyspark数据帧
singers\u sparkDF=spark.createDataFrame(singers\u pd)
#使用[[]]进行子集设置似乎有效!
歌手(sparkDF[[Fach','出生地]]show)
#使用[[]]重新排序似乎有效!
歌手(sparkDF[[ID]、[Name]、[Fach]、[Place of Birth']]

如果这不是一个好主意,我应该使用
。选择
或其他方法进行子集设置和重新排序吗?

你应该很好。方括号调用
\uuu getitem\uuu
,如果传入一个列表,它实际上只调用
select
。多读一些,你应该很好。方括号调用
\uuu getitem\uuu
,如果传入一个列表,它实际上只调用
select
。阅读更多关于。