在 Pandas 中将两个文本列合并为一个列

pythonpandasserver side programmingprogramming

在 Pandas 中将两个文本列合并为一个列:简介

Python 有一个强大的数据分析和操作模块,称为 Pandas。它提供了一系列工具和策略来有效地处理和转换数据。将多列合并或统一为一列是处理数据时的常见过程。本文将介绍在 Pandas 中合并两个文本列的方法,以及分步说明和示例。

在 Pandas 中将两个文本列合并为一个列

定义

在 Pandas 中,合并两个文本列意味着将两个不同列的值合并为一列。当我们希望整合相关数据或创建一个汇编来自各种来源的信息的新列时,这很有帮助。在 Pandas 中,将包含文本或字符串数​​据的两个不同列的值整合到单个列中的过程称为"连接两个文本列"。通过此过程,我们可以合并相关数据或创建一个包含来自各种来源的信息的新列。通过合并文本列,我们可以加快数据处理速度并从统一的角度获取见解。

使用 Pandas 连接文本列很简单,因为它具有直观的语法和强大的字符串操作功能。由于生成的连接列保留了原始列的数据类型,因此可以保持信息完整性。此外,Pandas 处理缺失值和跨行或跨列执行操作的能力可确保有效管理各种数据集。

语法

在 Pandas 中,连接两个文本列是一个简单的语法问题。为了合并两列的值并将结果应用于新列,我们使用"+"运算符。这里,dataframe 代表 Pandas DataFrame 名称,column1 和 column2 是将要合并的列的名称,而 'new_column' 是将保存合并列的值的新列的名称。

dataframe['new_column'] = dataframe['column1'] + dataframe['column2']

语法说明

让我们分解语法并了解每个组件。

  • dataframe['new_column']:这指的是数据框的新 'new_column' 列接收合并的值作为其新列。我们想要添加附加列的目标 DataFrame 是数据框。

  • dataframe['column1'] 和 dataframe['column2']:我们希望单独链接这些特定的列。我们利用列的名称来访问它们,从而获得相应的值。

  • '+':Pandas 使用此运算符进行连接。它使用第 1 列和第 2 列的值创建一个字符串。

算法

  • 步骤 1 - 添加所需的库:第一步是导入 Pandas 库,该库提供与 DataFrames 交互的能力。

  • 步骤 2 - 将数据读入 DataFrame:使用可用方法之一(例如 read_csv() 或 read_excel())将数据加载到 Pandas DataFrame 中。

  • 步骤 3 - 连接列:要连接所需的列,请使用前面给出的语法,然后将结果分配给新列。

  • 步骤 4 - 检查连接的数据:确认连接列的可选步骤可以是打印新列或查看DataFrame。

  • 步骤 5 - 保存更新的 DataFrame:如有必要,创建一个新文件或覆盖当前文件以保存修改后的 DataFrame。

方法

  • 方法 1 - 使用 + 运算符

  • 方法 2 - 使用 str.cat() 方法

方法 1:使用 + 运算符

"Name"和"Surname"是本示例中使用的 DataFrame 中的两列。应将这些列组合起来形成一个名为"全名"的新列。使用 + 运算符将"Name"和"Surname"列连接起来,中间留有间隙,以产生所需的结果。

示例

import pandas as pd

# 步骤 2:将数据读入 DataFrame
data = {'Name': ['John', 'Jane', 'Alice'],
'Surname': ['Doe', 'Smith', 'Johnson']}
df = pd.DataFrame(data)

# 步骤 3:连接列
df['Full Name'] = df['Name'] + ' ' + df['Surname']

# 步骤 4:探索连接的数据
print(df)

# 步骤 5:保存修改后的 DataFrame(可选)
# df.to_csv('output.csv', index=False)

输出

The output of this code will be −

   Name  Surname     Full Name
0  John      Doe      John Doe
1  Jane    Smith    Jane Smith
2 Alice  Johnson  Alice Johnson

方法 2:使用 str.cat() 方法

此方法中使用了 str.cat() 方法,该方法是专门为在 Pandas 中连接字符串而创建的。使用 str.cat() 方法的 sep 选项,我们可以定义一个分隔符(在本例中为空格)。

示例

import pandas as pd

# 步骤 2:将数据读入 DataFrame
data = {'Name': ['John', 'Jane', 'Alice'],
'Surname': ['Doe', 'Smith', 'Johnson']}
df = pd.DataFrame(data)

# 步骤 3:连接列
df['Full Name'] = df['Name'].str.cat(df['Surname'], sep=' ')

# 步骤 4:探索连接的数据
print(df)

# 步骤 5:保存修改后的 DataFrame(可选)
# df.to_csv('output.csv', index=False)

输出

此代码的输出将是 −

   Name  Surname     Full Name
0  John      Doe      John Doe
1  Jane    Smith    Jane Smith
2 Alice  Johnson  Alice Johnson

结论

使用 Pandas 将两个文本列合并为一列非常简单。我们可以快速连接两列中的值,并使用 + 运算符或 str.cat() 方法生成一个合并数据的新列。Pandas 是处理 Python 表格数据的首选包,因为它提供了强大的数据操作功能。我们可以通过在 Pandas 中连接文本列来执行各种文本操作。为了生成链接数据的连贯表示,它使我们能够连接字符串、在值之间插入分隔符或定界符以及使用自定义转换。由于它避免了手动合并或编辑单个列的需要,因此这种方法在处理大型数据集或在分析之前完成数据准备工作时特别有用。

总体而言,Pandas 改进了数据组织,使分析更容易,并且可以通过合并两个文本列来创建包含组合信息的丰富列。数据科学家和分析师可以利用 Pandas 的功能改进他们的流程、获得更好的理解并从表格数据中提取有用的信息。


相关文章