如何在 PySpark 或 Pandas 中将一列的中间行大写
Posted
技术标签:
【中文标题】如何在 PySpark 或 Pandas 中将一列的中间行大写【英文标题】:How to capitalize middle row of a column in PySpark or Pandas 【发布时间】:2020-11-12 07:49:03 【问题描述】:我有一个 CSV 文件的三列值
1st Column 2nd Column 3rd Column
ram karthi bruce
RAM KATHI BRUCE
ram karthi bruce
我想将 Pyspark 或 Pandas 中的 ram、karthi 和 bruce 等第二行大写... 我做不到。请帮忙。 PySpark 中的解决方案会更有帮助..
【问题讨论】:
Spark 没有索引的概念,因此“第 2 行”不是定义明确的行。这在 spark 中没有什么意义。 我猜是可以的.. 不,它不能。见***.com/questions/36938976/… ***.com/questions/43406887/… 带有 zipWithIndex 的代码在 Pyspark 中对我不起作用..请帮助我.. 【参考方案1】:在 Pandas 中,您可以使用 df.loc
和 Series.str.upper
来实现:
In [1619]: df
Out[1619]:
1st_Column 2nd_Column 3rd_Column
0 ram karthi bruce
1 ram karthi bruce
2 ram karthi bruce
In [1620]: df.loc[1] = df.loc[1].str.upper()
In [1621]: df
Out[1621]:
1st_Column 2nd_Column 3rd_Column
0 ram karthi bruce
1 RAM KARTHI BRUCE
2 ram karthi bruce
【讨论】:
我不太清楚如何在PySpark
中执行此操作。以上是关于如何在 PySpark 或 Pandas 中将一列的中间行大写的主要内容,如果未能解决你的问题,请参考以下文章
在 PySpark 中将 Python Dict 转换为稀疏 RDD 或 DF
在 Pyspark 中将 Pandas 数据帧转换为 Spark 数据帧的 TypeError