Иногда полезно преобразовать список в DataFrame, чтобы анализировать, манипулировать или визуализировать данные. Итак, здесь представлены 9 способов преобразования списка в кадр данных.
- Метод 1: с помощью функции pandas.DataFrame()
- Метод 2: используя имена столбцов и индекс
- Метод 3: с помощью функции zip()
- Метод 4: используя многомерный список
- Метод 5: используя список в словаре
- Метод 6: используя многомерный список с указанным типом dtype и именем столбца
- Метод 7: с помощью функции from_records()
- Метод 8: с помощью функции from_dict()
- Метод 9: используя список кортежей
Метод 1: с помощью функции pandas.DataFrame()
Самый простой и распространенный метод преобразования списка в DataFrame в Python — использовать функцию pandas.DataFrame(). Этот метод принимает список в качестве входных данных и преобразует его в DataFrame.
import pandas as pd # Creating the list Country_name = ['U.S.A','Brazil','Australia','United Kingdom'] # Using the pd.dataframe() new_result = pd.DataFrame(Country_name) # Display the Content print("Converted list to dataframe :",new_result)
Приведенный выше код демонстрирует, как преобразовать список Python в DataFrame Pandas с помощью библиотеки pandas.
- Список с именем Country_name содержит четыре названия стран, которые затем передаются в функцию pd.DataFrame() для создания нового DataFrame с именем new_result. Наконец, содержимое DataFrame отображается с помощью функции print().
Метод 2: используя имена столбцов и индекс
Если у вас есть список с именами столбцов и значениями индексов, вы можете преобразовать его в DataFrame в Python с помощью функции pandas.DataFrame().
import pandas as pd # Creation of list Country_name = ['U.S.A', 'United Kingdom', 'Australia'] new_result = pd.DataFrame(Country_name,index = [0,1,2], columns = ['Country_name']) # Display the Content print("Converted list to DataFrame :",new_result)
Приведенный выше код использует библиотеку pandas для создания кадра данных из списка названий стран. Список названий стран хранится в переменной Country_name.
- Новый фрейм данных создается с использованием метода pd.DataFrame(), который принимает список названий стран в качестве аргумента. Кроме того, у него есть еще два аргумента: индекс и столбцы.
- Аргумент индекса используется для указания меток строк для фрейма данных, а аргумент столбцов используется для указания меток столбцов для фрейма данных.
- Наконец, созданный фрейм данных выводится на консоль с помощью оператора print().
Output: Converted list to DataFrame : Country_name 0 U.S.A 1 United Kingdom 2 Australia
Метод 3: с помощью функции zip()
Этот метод преобразует список в DataFrame с помощью функции zip() в Python. Функция zip() принимает на вход несколько списков и возвращает итератор, который объединяет элементы из каждого из входных списков.
# Import the Pandas library as "pd" import pandas as pd # Create two lists, one for car names and another for their values Cars_in_USA = ['BMW', 'Tesla', 'Volkswagen'] new_values = [674, 723, 178] # Combine the two lists using the "zip()" function, and create a Pandas DataFrame using "pd.DataFrame()" new_result = pd.DataFrame(zip( Cars_in_USA, new_values), columns = ['Cars_name', 'value']) # Print the resulting DataFrame print(new_result)
Приведенный выше код сначала создает два списка: один для названий автомобилей, а другой для их значений в США.
- Затем функция «zip()» используется для объединения этих двух списков в кортеж, а полученные кортежи используются для создания DataFrame Pandas.
- Полученный DataFrame имеет два столбца: «Cars_name» и «value», а также три строки, по одной для каждого автомобиля. Наконец, полученный DataFrame выводится на консоль.
Output: Cars_name value 0 BMW 674 1 Tesla 723 2 Volkswagen 178
Метод 4: используя многомерный список
Этот метод преобразует многомерный список в DataFrame в Python с помощью функции pandas.DataFrame(). Многомерный список — это список списков, каждый подсписок представляет собой строку данных.
import pandas as pd #list contains integer and string values Bikes_in_USA = [['Harley Davidson', 7453], ['BMW', 4532], ['Sports bike', 9123]] new_output = pd.DataFrame(Bikes_in_USA, columns = ['Bikes_name', 'bike_number']) # Display the Content print("Converted list into dataframe :",new_output)
Приведенный выше код импортирует библиотеку Pandas и создает список списков, содержащих строковые и целочисленные значения.
- Затем он использует функцию pd.DataFrame() для преобразования списка в DataFrame Pandas. Наконец, функция print() используется для отображения содержимого DataFrame.
Метод 5: используя список в словаре
Этот метод сначала создает словарь с именами столбцов в качестве ключей и списками в качестве значений. Затем передайте словарь функции pandas.DataFrame(), чтобы создать DataFrame.
import pandas as pd # create a dictionary with the data data = {'Name': ['Alex', 'Jhon', 'Rock'], 'Age': [25, 30, 35], 'Gender': ['Female', 'Male', 'Male']} # create a DataFrame from the dictionary df = pd.DataFrame(data) # print the DataFrame print(df)
Приведенный выше код создает DataFrame из словаря, используя библиотеку pandas в Python.
- Словарь содержит три ключа: «Имя», «Возраст» и «Пол», каждый из которых имеет список соответствующих значений.
- DataFrame создается путем передачи словаря методу pd.DataFrame(). Наконец, DataFrame печатается с помощью оператора print().
Output: Name Age Gender 0 Alex 25 Female 1 Jhon 30 Male 2 Rock 35 Male
Метод 6: используя многомерный список с указанным типом dtype и именем столбца
Этот метод преобразует многомерный список с именами столбцов и типами данных, указанными в DataFrame в Python. Вы можете использовать функцию pandas.DataFrame() и передавать имена столбцов и типы данных в качестве параметров.
import pandas as pd # create a multi-dimensional list with data data = [['Alex', 25, 'Female'], ['Jhon', 30, 'Male'], ['Rock', 35, 'Male']] # create a DataFrame from the multi-dimensional list with column names and data types specified df = pd.DataFrame(data, columns=['Name', 'Age', 'Gender'], dtype=float) # print the DataFrame print(df)
Приведенный выше код создает DataFrame Pandas из многомерного списка с указанными именами столбцов и типами данных.
- Многомерный список содержит три списка, каждый из которых содержит три элемента — имя, возраст и пол. Функция pd.DataFrame() используется для создания DataFrame, а имена столбцов и типы данных указываются с использованием параметров columns и dtype.
- Наконец, DataFrame выводится на консоль с помощью функции print().
Output: Name Age Gender 0 Alex 25.0 Female 1 Jhon 30.0 Male 2 Rock 35.0 Male
Метод 7: с помощью функции from_records()
Этот метод преобразования списка в DataFrame заключается в использовании функции pandas.DataFrame.from_records(). Этот метод принимает список в качестве входных данных и преобразует его в DataFrame.
import pandas as pd # create a list my_list = [['Jhony', 25], ['James', 30], ['Alex', 35]] # convert the list to a DataFrame df = pd.DataFrame.from_records(my_list, columns=['Name', 'Age']) # print the DataFrame print(df)
Приведенный выше код импортирует библиотеку pandas и создает список под названием «my_list», содержащий подсписки с именами и информацией о возрасте трех человек.
- Затем он создает DataFrame pandas, используя метод from_records, который принимает список в качестве аргумента и указывает имена столбцов как «Имя» и «Возраст». Наконец, он выводит DataFrame на консоль.
Output: Name Age 0 Jhony 25 1 James 30 2 Alex 35
Метод 8: с помощью функции from_dict()
Этот метод преобразования списка в DataFrame заключается в том, чтобы сначала преобразовать список в словарь, а затем использовать функцию pandas.DataFrame.from_dict() для преобразования словаря в DataFrame.
import pandas as pd # create a list my_list = [['Jhony', 25], ['James', 30], ['Alex', 35]] # convert the list to a dictionary my_dict = {item[0]: item[1] for item in my_list} # convert the dictionary to a DataFrame df = pd.DataFrame.from_dict(my_dict, orient='index', columns=['Age']) # add a 'Name' column to the DataFrame df['Name'] = df.index # reset the index df.reset_index(drop=True, inplace=True) # print the DataFrame print(df)
В приведенном выше коде сначала создается список списков, содержащий имена и возраст людей.
- Затем список преобразуется в словарь с использованием словаря, где имена — это ключи, а возраст — значения.
- Затем словарь преобразуется в DataFrame с использованием метода from_dict, при этом индекс устанавливается как имена, а имя столбца устанавливается как «Возраст».
Output: Age Name 0 25 Jhony 1 30 James 2 35 Alex
Метод 9: используя список кортежей
Этот метод создает список кортежей с данными, а затем создает DataFrame с помощью функции pandas.DataFrame(). Полученный DataFrame будет иметь имена столбцов и типы данных в зависимости от порядка кортежей.
import pandas as pd # create a list of tuples with data data = [('USA', 332403650),('United Kingdom', 67508936),('Brazil', 216552394)] # create a DataFrame from the list of tuples df = pd.DataFrame(data, columns=['CountryName', 'Population']) # print the DataFrame print(df)
Приведенный выше код создает DataFrame с использованием библиотеки Pandas из списка кортежей, содержащих данные о странах и их населении.
- Сначала он создает список кортежей, а затем использует метод pd.DataFrame() для создания DataFrame с двумя столбцами «CountryName» и «Population». Наконец, созданный DataFrame печатается с помощью функции print().
Output: CountryName Population 0 USA 332403650 1 United Kingdom 67508936 2 Brazil 216552394