在 Python 中根據給定條件建立 Pandas 資料框架列


Pandas 建立資料框架以處理 Python 程式中的資料。在本篇文章中,我們將瞭解如何基於特定條件向現有資料框架中新增新列。

給定資料框架

下面是給定的 pandas DataFrame,我們將向其中新增附加列。它描述了考試的天數和科目。

示例

 即時演示

import pandas as pd

# Lists for Exam subjects and Days
Days = ['Mon', 'Tue', 'Wed','Thu', 'Fri']
Sub = ['Chemisry','Physics','Maths','English','Biology']

# Dictionary for Exam Schedule
Exam_Subjects = {'Exam Day': Days,
               'Exam Subject': Sub}

# Dictionary to 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 語句新增條件並把附加列命名為時間。

示例

 即時演示

import pandas as pd

# Lists for Exam subjects
Days = ['Mon', 'Tue', 'Wed','Thu', 'Fri']
Sub = ['Chemisry','Physics','Maths','English','Biology']


# Dictionary for Exam Schedule
Exam_Subjects = {'Exam Day': Days,
                  'Exam Subject': Sub}

# Dictionary to 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

更新於:2020 年 8 月 26 日

230 次瀏覽

開啟你的職業

透過完成課程獲得認證

開始
廣告