簡體   English   中英

在python中使用pandas格式化列

[英]formatting columns using pandas in python

我下面有一個從 csv 讀取的函數(示例也包括在下面)

功能:

def logic_one(grades):
    df1 = pd.read_csv(grades)
    del df1['Student ID']
    df2 = df1.mean()
    df2.columns = ['Questions', 'Mean']
    print(df2)

CSV 示例:

Student ID,Question 1,Question 2,Question 3,Question 4,Question 5,Question 6
205842,6.5,6.5,9.5,5.5,3.5,9.5
280642,8.5,9.5,3.5,9.5,4,9.5
289179,7,9.5,9,9.5,7,4

它目前返回以下內容:

Question 1 6.62
Question 2 6.74
Question 3 6.55
Question 4 6.11
Question 5 6.69
Question 6 6.74
dtype: float64

但是,我希望它返回第 2 列上方名為“Mean”的標題。我認為我的函數的第 5 行會執行此操作,但事實並非如此,有沒有人知道我為什么錯了?

此外,如果您對如何刪除 'dtype: float64' 行有任何反饋,這也會有所幫助。

正如@cs95 所提到的, mean()返回一個系列,您希望將其轉換為數據幀。

您可以使用Series.to_frame進行該轉換,並且可以在該轉換時命名該列。

df2 = df1.mean().to_frame(name='Mean')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM