如何在Python-Pandas中从字典中创建DataFrame
让我们来讨论如何在Pandas中从字典中创建DataFrame。有多种方法来完成这项任务。
方法1:使用pandas.Dataframe类的默认构造函数从字典中创建DataFrame。
代码:
# import pandas library
import pandas as pd
# dictionary with list object in values
details = {
'Name' : ['Ankit', 'Aishwarya', 'Shaurya', 'Shivangi'],
'Age' : [23, 21, 22, 21],
'University' : ['BHU', 'JNU', 'DU', 'BHU'],
}
# creating a Dataframe object
df = pd.DataFrame(details)
df
Python
输出:
方法2:用用户定义的索引从字典中创建DataFrame。
代码:
# import pandas library
import pandas as pd
# dictionary with list object in values
details = {
'Name' : ['Ankit', 'Aishwarya', 'Shaurya', 'Shivangi'],
'Age' : [23, 21, 22, 21],
'University' : ['BHU', 'JNU', 'DU', 'BHU'],
}
# creating a Dataframe object from dictionary
# with custom indexing
df = pd.DataFrame(details, index = ['a', 'b', 'c', 'd'])
df
Python
输出:
方法3:从简单的字典中创建DataFrame,即带有键和简单值的字典,如整数或字符串值。
代码:
# import pandas library
import pandas as pd
# dictionary
details = {
'Ankit' : 22,
'Golu' : 21,
'hacker' : 23
}
# creating a Dataframe object from a list
# of tuples of key, value pair
df = pd.DataFrame(list(details.items()))
df
Python
输出:
方法4:从字典中只用所需的列来创建数据框架。
代码:
# import pandas library
import pandas as pd
# dictionary with list object in values
details = {
'Name' : ['Ankit', 'Aishwarya', 'Shaurya', 'Shivangi'],
'Age' : [23, 21, 22, 21],
'University' : ['BHU', 'JNU', 'DU', 'BHU'],
}
# creating a Dataframe object with skipping
# one column i.e skipping age column.
df = pd.DataFrame(details, columns = ['Name', 'University'])
df
Python
输出:
方法5:从字典中创建不同方向的数据框架,即字典中的键作为数据框架的索引。
代码:
# import pandas library
import pandas as pd
# dictionary with list object in values
details = {
'Name' : ['Ankit', 'Aishwarya', 'Shaurya', 'Shivangi'],
'Age' : [23, 21, 22, 21],
'University' : ['BHU', 'JNU', 'DU', 'BHU'],
}
# creating a Dataframe object in which dictionary
# key is act as index value and column value is
# 0, 1, 2...
df = pd.DataFrame.from_dict(details, orient = 'index')
df
Python
输出:
方法6:从嵌套的字典中创建数据框架。
代码:
# import pandas library
import pandas as pd
# dictionary with dictionary object
# in values i.e. nested dictionary
details = {
0 : {
'Name' : 'Ankit',
'Age' : 22,
'University' : 'BHU'
},
1 : {
'Name' : 'Aishwarya',
'Age' : 21,
'University' : 'JNU'
},
2 : {
'Name' : 'Shaurya',
'Age' : 23,
'University' : 'DU'
}
}
# creating a Dataframe object
# from nested dictionary
# in which inside dictionary
# key is act as index value
# and column value is 0, 1, 2...
df = pd.DataFrame(details)
# swap the columns with indexes
df = df.transpose()
df
Python
输出: