一、什麼是Pandas DataFrame?
Pandas是一個基於NumPy的Python數據分析庫,它包含多個數據結構,其中最主要的是DataFrame,它是一個表格型的數據結構,具有行和列的索引,可以看作是Excel或SQL中的一個表。DataFrame中的數據可以是數值、字符串或其他類型。
下面是一個示例代碼,演示如何創建一個DataFrame:
import pandas as pd data = {'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 35, 45, 55], 'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']} df = pd.DataFrame(data) print(df)
輸出:
name age city 0 Alice 25 Beijing 1 Bob 35 Shanghai 2 Charlie 45 Guangzhou 3 David 55 Shenzhen
二、Pandas DataFrame轉換成Python List的需求
在實際的開發中,我們可能需要將Pandas DataFrame轉換成Python List,以方便進行一些操作。
例如,我們需要將一個DataFrame中的某一列提取出來,轉換成列表,以方便進行其他處理,這時就需要將DataFrame轉換成Python List。
下面是一個示例代碼,演示如何將DataFrame的某一列轉換成Python List:
import pandas as pd data = {'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 35, 45, 55], 'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']} df = pd.DataFrame(data) name_list = df['name'].tolist() print(name_list)
輸出:
['Alice', 'Bob', 'Charlie', 'David']
三、PandasToList實現代碼
為了更方便地將Pandas DataFrame轉換成Python List,我們可以寫一個函數PandasToList,代碼如下:
import pandas as pd from typing import List def PandasToList(df: pd.DataFrame) -> List[List]: return df.values.tolist()
這個函數可以將一個DataFrame轉換成一個二維列表,每一行是一個列表,整個列表中包含所有行。
我們可以使用這個函數來將DataFrame轉換成Python List,示例代碼如下:
import pandas as pd data = {'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 35, 45, 55], 'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']} df = pd.DataFrame(data) data_list = PandasToList(df) print(data_list)
輸出:
[['Alice', 25, 'Beijing'], ['Bob', 35, 'Shanghai'], ['Charlie', 45, 'Guangzhou'], ['David', 55, 'Shenzhen']]
四、PandasToList函數的應用場景
PandasToList函數可以應用於多種場景,例如:
1、將DataFrame的某些列轉換成Python List
我們可以使用PandasToList函數將DataFrame的某些列轉換成Python List,以方便進行其他處理。
示例代碼:
import pandas as pd data = {'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 35, 45, 55], 'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']} df = pd.DataFrame(data) name_age_list = PandasToList(df[['name', 'age']]) print(name_age_list)
輸出:
[['Alice', 25], ['Bob', 35], ['Charlie', 45], ['David', 55]]
2、將DataFrame的數據導入數據庫
我們可以使用PandasToList函數將DataFrame轉換成Python List,然後將數據插入到數據庫中。
示例代碼:
import pandas as pd import pymysql conn = pymysql.connect(host='localhost', user='root', password='root', database='test_db', charset='utf8') cursor = conn.cursor() data = {'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 35, 45, 55], 'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']} df = pd.DataFrame(data) data_list = PandasToList(df) for row in data_list: sql = "insert into user (name, age, city) values ('%s', %d, '%s')" % (row[0], row[1], row[2]) cursor.execute(sql) conn.commit() conn.close()
這段代碼將DataFrame轉換成Python List,並將數據插入到了數據庫中。
五、小結
本文介紹了Pandas DataFrame的基本概念,以及如何將DataFrame轉換成Python List。我們還編寫了一個PandasToList函數,方便進行轉換操作。
原創文章,作者:PELL,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/133685.html