当前位置: 首页 > 知识库问答 >
问题:

如何将多个列名重命名为单个列?

龙欣德
2023-03-14

我有一个表,它有列[col1、col2、col3....col9]。我想在Python中把所有列数据合并到一个列中作为col?

共有1个答案

东方夕
2023-03-14
from pyspark.sql.functions import concat

values = [('A','B','C','D'),('E','F','G','H'),('I','J','K','L')]
df = sqlContext.createDataFrame(values,['col1','col2','col3','col4'])
df.show()

+----+----+----+----+
|col1|col2|col3|col4|
+----+----+----+----+
|   A|   B|   C|   D|
|   E|   F|   G|   H|
|   I|   J|   K|   L|
+----+----+----+----+

req_column = ['col1','col2','col3','col4']
df = df.withColumn('concatenated_cols',concat(*req_column))
df.show()

+----+----+----+----+-----------------+
|col1|col2|col3|col4|concatenated_cols|
+----+----+----+----+-----------------+
|   A|   B|   C|   D|             ABCD|
|   E|   F|   G|   H|             EFGH|
|   I|   J|   K|   L|             IJKL|
+----+----+----+----+-----------------+
 类似资料:
  • 在SQL Server中,我有一个数据库< code>abc。在这个数据库中,我有数百个表。这些表格中的每一个都被称为< code>xyz.table 我想把所有的表格都改成< code>abc.table。 我们有办法将数据库< code>abc中的所有名称从< code>xyz.table更改为< code>abc.table吗? 我可以通过将每个表的模式更改为abc来手动更改名称

  • 我有一个单一的CSV文件,在其中我想重命名一些列相同的名称。我的初始代码如下所示 我用这段代码从dataframe中提取了选定的列 此切片每隔三列获取一次。现在我想用相同的名称重命名每三列一次,但这样重命名我的列会出错 有没有办法在pandas中重命名多个同名列? 除了手动操作,还有其他建议吗?

  • 问题内容: 我知道如何在bash中配置别名,但是有没有办法为一系列命令配置别名? 也就是说,我希望一个命令更改为特定目录,然后运行另一个命令。 另外,是否可以设置运行“ sudo mycommand”的命令,然后输入密码?在MS-DOS时代,我会寻找一个.bat文件,但是我不确定Linux(或Mac OSX)是否等效。 问题答案: 您提到了BAT文件,所以也许您想要的是编写Shell脚本。如果是这

  • 我试着使用下面的代码将TABLE_name更改为MANAGER_ID; 收到错误信息:1064。您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以了解在第1行0.000秒处使用“MANAGER ID”到“MANAGER_ID”附近的正确语法

  • 问题内容: 我有这样的事情: 我想将这些文件重命名为以下形式: 在同一目录中。 我想我可以使用,但是我不知道如何在文件夹和文件重命名的同时使用它。 问题答案: 可以使用bash for loop和: 请注意,如果目录名称包含空格,则上述解决方案将不起作用。相关链接。 另一种基于注释的解决方案(也适用于名称中也包含空格的目录):

  • 问题内容: 我在df中有几列相同的名称。需要重命名它们。无论如何,通常的重命名都会重命名,我可以将下面的blah重命名为blah1,blah4,blah5吗? 在[7]中: 问题答案: 我希望在Pandas中找到比通用Python解决方案更多的解决方案。如果Column的get_loc()函数找到带有“ True”值的重复项,则该掩码数组将返回掩码数组,“ True”值指向找到重复项的位置。然后,