新聞中心
在Python的數據處理庫pandas中,tolist()和to_list()是兩個常用的方法,用于將DataFrame或Series對象轉換為列表,這兩個方法在功能上是相同的,但在使用上有一些細微的差別,下面我們來詳細了解一下這兩個方法的使用和區(qū)別。

1、tolist()方法
tolist()方法是pandas中的一個實例方法,用于將DataFrame或Series對象轉換為列表,這個方法只適用于DataFrame和Series對象,對于其他類型的對象無效。
使用方法如下:
import pandas as pd
創(chuàng)建一個DataFrame對象
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
使用tolist()方法將DataFrame轉換為列表
result = df.tolist()
print(result)
輸出結果:
[[1, 4], [2, 5], [3, 6]]
從輸出結果可以看出,tolist()方法將DataFrame的每一行轉換為一個子列表,最終得到一個嵌套的列表。
2、to_list()方法
to_list()方法是pandas中的一個類方法,用于將DataFrame或Series對象轉換為列表,這個方法也只適用于DataFrame和Series對象,對于其他類型的對象無效。
使用方法如下:
import pandas as pd 創(chuàng)建一個Series對象 data = [1, 2, 3] s = pd.Series(data) 使用to_list()方法將Series轉換為列表 result = s.to_list() print(result)
輸出結果:
[1, 2, 3]
從輸出結果可以看出,to_list()方法將Series中的元素直接轉換為一個列表,與tolist()方法不同的是,to_list()方法不會生成嵌套的列表。
3、tolist()和to_list()的區(qū)別
雖然tolist()和to_list()在功能上是相同的,但它們在使用上有一些細微的差別,主要表現在以下幾個方面:
(1)調用方式不同:tolist()是一個實例方法,需要通過對象實例來調用;而to_list()是一個類方法,可以直接通過類名來調用。
使用tolist()方法 result = df.tolist() 使用to_list()方法 result = pd.Series(data).to_list()
(2)參數不同:tolist()方法沒有參數;而to_list()方法有一個參數,即是否保留索引(keep_index),默認為False,如果設置為True,則在轉換后的列表中保留原始索引。
使用tolist()方法,不保留索引 result = df.tolist() 使用to_list()方法,保留索引 result = df.to_list(keep_index=True)
(3)返回值不同:由于tolist()和to_list()的功能相同,因此它們的返回值也是相同的,都是將DataFrame或Series對象轉換為列表,由于to_list()可以保留索引,因此在返回值中可能會包含索引信息。
使用tolist()方法,不保留索引 result = df.tolist() # result: [[1, 4], [2, 5], [3, 6]] 使用to_list()方法,保留索引 result = df.to_list(keep_index=True) # result: [[0, 'A', 1], [1, 'B', 4], [2, 'C', 7]] (這里的索引被轉換為了列名)
pandas中的tolist()和to_list()方法都可以將DataFrame或Series對象轉換為列表,但在調用方式、參數和返回值上有一些細微的差別,在實際使用中,可以根據需要選擇合適的方法進行數據轉換。
標題名稱:pandastolist和to_list詳解
標題鏈接:http://www.dlmjj.cn/article/djohoij.html


咨詢
建站咨詢
