1. 程式人生 > 其它 >Pandas之DataFrame的簡單使用

Pandas之DataFrame的簡單使用

技術標籤:資料分析python資料分析

Pandas練習1

練習題

DataFrame的簡單操作

程式碼

import pandas as pd
import numpy as np

# exercise 1
# 1. 建立 學生成績表.xlsx 檔案
stu_names = ["胡歌", "林更新", "金世佳", "醜娟"]
courses = ['語文', '數學', '英語', 'Python', '體育']
data =
np.array([[87., 74., 98., 84., np.nan], [79., 69., 61., 99., np.nan], [84., 84., 94., 66., np.nan], [90., 60., 72., 90., np.nan]]) course_grades = pd.DataFrame(data, index=stu_names, columns=courses) course_grades.to_excel("學生成績表.xlsx") # 2. 建立 選修成績表.xlsx 檔案
student_names = ["胡歌", "林更新", "金世佳", "醜娟"] ele_courses = ['統計學', '日語'] ele_data = np.array([[85., np.nan], [np.nan, 69.], [np.nan, 95.], [80., np.nan]]) ele_course_grades = pd.DataFrame(ele_data, index=
student_names, columns=ele_courses) ele_course_grades.to_excel("選修成績表.xlsx") # exercise 2: 讀取兩表資料,注意:此時需指定行索引為第一列。 courses_data = pd.read_excel("學生成績表.xlsx", index_col=[0]) print(courses_data) print() ele_courses_data = pd.read_excel("選修成績表.xlsx", index_col=[0]) print(ele_courses_data) print() # exercise 3 # 1. 因為體育課全被數學老師搶了,所以學生成績表中的體育期末成績全為空,將其刪除。 # 利用drop()方法 選中對應得列 並且將inplace賦值為True表示在原資料上操作 courses_data.drop("體育", axis=1, inplace=True) print(courses_data) print() # 2. 學生成績表.xlsx 中沒有選修的資料,將 選修成績表.xlsx 的資料新增到 學生成績表 中。 # 觀察資料後 需求是是給 學生成績表.xlsx 新增新的列 courses_data["統計學"] = ele_courses_data["統計學"] courses_data["日語"] = ele_courses_data["日語"] print(courses_data) print() # 3. 可以觀察出來,此時的資料每個人都是五門課程,現在需新增一列 總成績 來求得每位學生的總成績。 # 再將該資料儲存到 總表.xlsx 中 # 利用df.sum()方法 courses_data["總成績"] = courses_data.sum(axis=1) print(courses_data) # 儲存下來最後的表 courses_data.to_excel("總表.xlsx")

效果圖

小結

  1. 建立DataFrame時,引數要注意。
  2. 要留心index和columns的區別。
  3. DataFrame進行資料新增的時候要分清楚是新增行還是列。