TShopping

 找回密碼
 註冊
搜索
查看: 2065|回復: 0
打印 上一主題 下一主題

[教學] Python 如何將標題行新增到 Pandas DataFrame

[複製鏈接]
跳轉到指定樓層
1#
發表於 2021-7-13 22:47:49 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
 
Push to Facebook
通過直接在 dataframe 方法中傳遞標題行來新增標題行
使用 dataframe.columns 新增標題行
新增標頭而不替換當前標頭
讀取 csv 檔案時,將 header 行新增到 dataframe 中

我們將介紹在 pandas 的 dataframe 中新增標題行的方法,以及直接在 dataframe 中傳遞 names 或通過將列表中的列名直接分配給 dataframe.columns 方法的選項。


我們還將介紹 Pandas 的 dataframe 新增標頭,而不替換當前標頭。換句話說,我們將當前標頭向下移動,並將其新增到 dataframe 中作為另一條記錄。

我們還將看一下在讀取 csv 檔案時如何向 pandas.dataframe 新增標題行的例子。

通過直接在 dataframe 方法中傳遞標題行來新增標題行
我們將使用 columns 引數將 header 直接傳遞給 dataframe。


考慮以下程式碼:

  1. # python 3.x
  2. import pandas as pd
  3. import numpy as np
  4. df = pd.DataFrame(
  5.     data=np.random.randint(
  6.         0, 10, (6,4)),
  7.     columns =["a", "b", "c", "d"])
  8. print(df)
複製代碼

輸出:

  1.    a  b  c  d
  2. 0  4  4  4  0
  3. 1  8  1  2  5
  4. 2  3  0  4  3
  5. 3  3  7  2  4
  6. 4  8  3  1  8
  7. 5  6  7  5  9
複製代碼

使用 dataframe.columns 新增標題行
我們還可以使用 dataframe.columns 將標題行新增到 dataframe 中。

考慮以下程式碼:

  1. # python 3.x
  2. import pandas as pd
  3. import numpy as np
  4. df = pd.DataFrame(
  5.     data=np.random.randint(
  6.         0, 10, (6,4)))
  7. df.columns=["a", "b", "c", "d"]
  8. print(df)
複製代碼

輸出:
  1.    a  b  c  d
  2. 0  5  2  6  7
  3. 1  4  5  9  0
  4. 2  8  3  0  4
  5. 3  6  3  1  1
  6. 4  9  3  4  8
  7. 5  7  5  0  6
複製代碼

新增標頭而不替換當前標頭
另一種選擇是將標題行新增為列索引的附加級別,以使其成為 MultiIndex。當我們需要為列增加一層資訊時,此方法很有用。

考慮以下程式碼:

  1. # python 3.x
  2. import pandas as pd
  3. import numpy as np
  4. df = pd.DataFrame(
  5.     data=np.random.randint(
  6.         0, 10, (6,4)),
  7.     columns=["a", "b", "c", "d"])
  8. df.columns = pd.MultiIndex.from_tuples(
  9.     zip(['A', 'B','C', 'D'],
  10.         df.columns))
  11. print(df)
複製代碼

輸出:

  1.    A  B  C  D
  2.    a  b  c  d
  3. 0  2  6  4  6
  4. 1  5  0  5  1
  5. 2  9  6  6  1
  6. 3  8  9  7  4
  7. 4  6  5  6  6
  8. 5  3  9  1  5
複製代碼


讀取 csv 檔案時,將 header 行新增到 dataframe 中
我們可以直接在 read_csv 中使用 names,或者如果檔案沒有標題,可以顯式設定 header = None。

考慮以下程式碼:

  1. # python 3.x
  2. import pandas as pd
  3. import numpy as np
  4. df = pd.Cov = pd.read_csv(
  5.     "path/to/file.csv",
  6.      names=["a", "b", "c", "d"])
複製代碼

文章出處

 

臉書網友討論
*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2024-4-26 22:51 , Processed in 0.076384 second(s), 22 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表