在 Python 中根据给定条件创建 Pandas 数据框列

pythonserver side programmingprogramming更新于 2025/10/11 3:56:17

Pandas 创建数据框来处理 Python 程序中的数据。在本文中,我们将了解如何根据某些条件向现有数据框添加新列。

给定的数据框

下面是给定的 pandas 数据框,我们将向其中添加其他列。它描述了考试的日期和科目。

示例

import pandas as pd

# 考试科目和日期列表
Days = ['Mon', 'Tue', 'Wed','Thu', 'Fri']
Sub = ['Chemisry','Physics','Maths','English','Biology']

# 考试时间表词典
Exam_Subjects = {'Exam Day': Days,
               '考试科目': Sub}

# 字典到 DataFrame
Exam_Subjects_df = pd.DataFrame(Exam_Subjects)
print(Exam_Subjects_df)

输出

运行上述代码得到以下结果 −

   Exam Day  Exam Subject
0    Mon     Chemisry
1    Tue     Physics
2    Wed     Maths
3    Thu     English
4    Fri     Biology

添加新列

接下来我们决定添加另一列来指定考试时间。这里我们使用 if 语句添加条件,并将附加列命名为 Time。

示例

import pandas as pd

# 考试科目列表
Days = ['Mon', 'Tue', 'Wed','Thu', 'Fri']
Sub = ['Chemisry','Physics','Maths','English','Biology']

# 考试时间表词典
Exam_Subjects = {'Exam Day': Days,
                  'Exam Subject': Sub}

# 字典到 DataFrame
Exam_Subjects_df = pd.DataFrame(Exam_Subjects)

Exam_Subjects_df['Time'] = ['2 PM' if x in('Mon','Thu') else '10 AM' for x in Exam_Subjects_df['Exam Day']]
print(Exam_Subjects_df)

输出

运行上述代码得到以下结果 −

  Exam Day   Exam Subject  Time
0  Mon       Chemisry      2 PM
1  Tue       Physics       10 AM
2  Wed       Maths         10 AM
3  Thu       English       2 PM
4  Fri       Biology       10 AM

相关文章


有用资源