在Python中将列表转换为数据帧
在本教程中,我们将看到如何使用列表并将其转换为Python中的数据帧。
但是在开始之前,让我们复习一下什么是列表和什么是数据帧?
列表是Python中的一种数据结构,其中所有元素都被包含在方括号中。
列表的示例是-
Colors=['Red', 'Blue', 'Green', 'Orange']
数据框是以行和列的形式呈现数据的表格表示。
它们可以通过导入pandas来使用。
现在让我们来看看Python中将列表转换成数据框的不同方法。
- 使用 DataFrame()
- 使用具有索引和列名的列表
- 使用zip()
- 使用多维列表
- 使用具有列和数据类型的多维列表
- 在字典中使用列表
使用pd.DataFrame()
在第一种方法中,我们使用了 pd.DataFrame() 将列表转换成数据框。
以下程序显示了如何执行此操作-
import pandas as pd
#list_values having strings
list_values = ['English','Hindi','Mathematics','Science','Social Science']
df = pd.DataFrame(list_values)
print(df)
输出:
0
0 English
1 Hindi
2 Mathematics
3 Science
4 Social Science
说明:
现在是时候看一下上面程序的解释了-
- 首先我们导入了pandas库。
- 在此之后,我们声明了一个以字符串为值的列表。
- 最后,我们将此列表传递给 DataFrame() 并显示输出。
使用具有索引和列名称的列表
在第二种方法中,我们将创建一个具有索引值和列名称的数据帧。
下面给出的程序说明了相同的问题。
import pandas as pd
#list_values having strings
list_values = ['English', 'Hindi', 'Mathematics', 'Science', 'Social Science']
df = pd.DataFrame(list_values,index = ['i', 'ii', 'iii', 'iv', 'v'], columns = ['Subjects'])
print(df)
输出:
Subjects
i English
ii Hindi
iii Mathematics
iv Science
v Social Science
说明:
现在是时候理解上述程序了-
- 在第一步中,我们导入了pandas库。
- 在此之后,我们声明了一个具有字符串值的列表。
- 最后,我们将这个列表传递给 DataFrame() ,并提供了一个索引值列表和列名。
- 执行程序后,它会显示所需的输出。
使用zip()
在这种方法中,我们使用了 zip().
以下程序展示了如何实现这一点-
import pandas as pd
#list_values having strings
list_values = ['English', 'Hindi', 'Mathematics', 'Science', 'Social Science']
list_index = [20, 21, 22, 23, 24]
df = pd.DataFrame(list(zip(list_values, list_index)), columns = ['Subjects', 'Code'])
print(df)
输出:
Subjects Code
0 English 20
1 Hindi 21
2 Mathematics 22
3 Science 23
4 Social Science 24
解释:
现在是时候看一下上面程序的解释了-
- 在第一步中,我们导入了pandas库。
- 之后,我们声明了一个包含字符串的列表作为其值,另一个列表包含索引值。
- 最后,我们将 list_values 和 list_index 在zip内传递给 DataFrame() ,其中包含索引值列表和列名。
- 执行该程序后,它会显示所需的输出。
使用多维列表
在这种方法中,我们将看到如何使用多维列表进行转换。
下面给出的程序说明了相同的内容。
import pandas as pd
#list_values having strings
list_values = [['English', 4101], ['Hindi', 4102], ['Science', 4103], ['Mathematics', 4104], ['Computer', 4105]]
df = pd.DataFrame(list_values, columns = ['Subject Name', 'Subject Code'])
print(df)
输出:
Subject Name Subject Code
0 English 4101
1 Hindi 4102
2 Science 4103
3 Mathematics 4104
4 Computer 4105
解释:
现在是理解上述程序的时候了-
- 第一步,我们导入pandas库。
- 然后,我们声明包含不同列表的列表,每个列表都有一个字符串和一个整数值。
- 最后,我们将list_values传递给pd.DataFrame(),并提供一个列名的列表。
- 执行该程序后,显示所需的输出。
使用带列名和数据类型的多维列表
在这种方法中,我们将看到上述程序的略有变化。
以下程序展示了如何实现-
import pandas as pd
#list_values having strings
list_values = [['Colin', 'Lassiter', 46], ['James', 'Gomez', 24], ['Sara', 'Charles', 34], ['Raven', 'Stewart', 24], ['Oliver', 'Osment', 21]]
df = pd.DataFrame(list_values, columns = ['First_Name', 'Last_Name', 'Age'], dtype = float)
print(df)
输出:
First_Name Last_Name Age
0 Colin Lassiter 46.0
1 James Gomez 24.0
2 Sara Charles 34.0
3 Raven Stewart 24.0
4 Oliver Osment 21.0
解释:
是时候来看一下上面程序的解释了-
- 在第一步中,我们导入了pandas库。
- 然后,我们声明了一个包含不同列表的列表,每个列表都有两个字符串 值(名和姓) 和一个整数 值(年龄) 。
- 最后,我们将 list_values 传递给 DataFrame() ,并且提供了一组列名和数据类型。
- 在执行程序时,它会显示所需的输出。
在字典中使用列表
最后,我们将看到如何将列表与字典一起使用并将列表转换为数据帧。
下面给出的程序说明了这一点。
import pandas as pd
#list_values having strings
f_name = ['Colin', 'James', 'Sara', 'Raven', 'Oliver']
l_name = ['Lassiter', 'Gomez', 'Charles', 'Stewart', 'Osment']
age = [46, 24, 34, 24, 21]
dict = {'First Name':f_name, 'Last_Name':l_name, 'Age':age}
df = pd.DataFrame(dict)
print(df)
输出:
First Name Last_Name Age
0 Colin Lassiter 46
1 James Gomez 24
2 Sara Charles 34
3 Raven Stewart 24
4 Oliver Osment 21
解释:
现在是了解上面的程序的时候了-
- 在第一步中,我们导入了pandas库。
- 在此之后,我们声明了三个列表,分别为f_name,l_name和age。
- 在下一步中,我们将这些列表用作字典键的值。
- 最后,我们在 DataFrame() 中传递了dict。
- 在执行程序时,它会显示所需的输出。
结论
在本教程中,我们介绍了一些在Python中将列表转换为 dataframe 的有趣方法。