我尝试在一列下创建两个子列。首先,我从字典创建了一个 DataFrame
Destination = ['Milan', 'London','Lisbon','Milan','Mumbai', 'Lisbon', 'Porto', 'Lisbon']
Product_Revenue = [542,332,135,524,232, 522, 122, 122]
data_frame = {'Destination' : [i for i in Destination],
'Revenue': [j for j in Product_Revenue]}
pd.DataFrame(data_frame)
其次,我想添加 Booking
作为主列,以便 Destination
和 Revenue
成为它的子列。但我在索引中甚至以列表的形式得到了 Destination
和 Revenue
。
data_frame = {'Booking': {'Destination' : [i for i in Destination],
'Revenue': [j for j in Product_Revenue]}}
pd.DataFrame(data_frame)
Booking
Destination [Milan, London, Vienna, Milan, Mumbai, Paris, ...
Revenue [542, 332, 135, 524, 232, 522, 122, 122]
目的地
和收入
按行显示。
如何将两者的每个值与前一个值并行写入?
future 的目标是添加Users
作为索引。因此,最终的数据帧将是 User
与 Booking
数据,其中 Destination
和 Price
值因每个用户而异。
任何帮助将不胜感激。
最佳答案
这个问题有点困惑。如果您希望构建一个 DF,其列作为多索引,其中第一级是“预订”,第二级是[目的地,收入],则键应定义为元组:
Destination = ['Milan', 'London','Lisbon','Milan','Mumbai', 'Lisbon', 'Porto', 'Lisbon']
Product_Revenue = [542,332,135,524,232, 522, 122, 122]
data_frame = {('Booking', 'Destination') : Destination,
('Booking', 'Revenue'): Product_Revenue}
pd.DataFrame(data_frame)
输出:
Booking
Destination Revenue
0 Milan 542
1 London 332
2 Lisbon 135
3 Milan 524
4 Mumbai 232
5 Lisbon 522
6 Porto 122
7 Lisbon 122
关于python - 如何使用嵌套字典中的子列创建数据框(多索引)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55478281/