如何创建一个数据帧并从这两个输出中形成两个独立的列?

2024-05-15 16:55:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个数据帧,其中包含以下两个输出,并排列:

finalcust = mainorder_df, custname1_df
print(finalcust)

finalcust
Out[46]: 
(10      10103.0
 26      10104.0
 39      10105.0
 54      10106.0
 72      10107.0
          ...   
 2932    10418.0
 2941    10419.0
 2955    10420.0
 2977    10424.0
 2983    10425.0
 Name: ordernumber, Length: 213, dtype: float64,
 1                  Signal Gift Stores
 2          Australian Collectors, Co.
 3                   La Rochelle Gifts
 4                  Baane Mini Imports
 5        Mini Gifts Distributors Ltd.
                     ...              
 117      Motor Mint Distributors Inc.
 118          Signal Collectibles Ltd.
 119    Double Decker Gift Stores, Ltd
 120              Diecast Collectables
 121                 Kelly's Gift Shop
 Name: customerName, Length: 91, dtype: object)

我试过了pd.合并但它说我是不允许的,因为没有公共列。你知道吗

有人知道吗?你知道吗


Tags: 数据namedfsignallengthstoresdtypemini
1条回答
网友
1楼 · 发布于 2024-05-15 16:55:23

你到底想达到什么目的?你知道吗

df.merge()

的一般合并

无法合并数据帧,因为它们在任何情况下都不相关。熊猫希望它们有一个类似的专栏,以便知道如何合并。pandas.DataFrame.merge docs

示例:如果要从客户信息表中获取信息并将其添加到订单列表中。你知道吗

import pandas as pd
customers = ['A', 'B', 'C', 'D']
addresses = ['Adress_A', 'Address_B', 'Address_C', 'Address_D']
df1 = pd.DataFrame({'Customer': customers,
                     'Info': addresses})
df2 = pd.DataFrame({'Customer': ['A', 'B', 'C', 'D','A','B','C','D','A','B'],
                     'Order': [1,2,3,4,5,6,7,8,9,10]})
df = df1.merge(df2)
df =

Customer    Info    Order
0   A   Adress_A    1
1   A   Adress_A    5
2   A   Adress_A    9
3   B   Address_B   2
4   B   Address_B   6
5   B   Address_B   10
6   C   Address_C   3
7   C   Address_C   7
8   D   Address_D   4
9   D   Address_D   8

df.concat()

如果它们的大小相同,您可以使用concat来组合它们。有一篇关于它的帖子here

示例:将新客户列表添加到客户数据框

import pandas as pd
customers = ['A', 'B', 'C', 'D']
addresses = ['Address_A', 'Address_B', 'Address_C', 'Address_D']
new_customers = ['E', 'F', 'G', 'H']
new_addresses = ['Address_E', 'Address_F', 'Address_G', 'Address_G']
df1 = pd.DataFrame({'Customer': customers,
                     'Info': addresses})
df2 = pd.DataFrame({'Customer': new_customers,
                     'Info': new_addresses})
df = pd.concat([df1, df2])
df =
    Customer    Info
0   A   Address_A
1   B   Address_B
2   C   Address_C
3   D   Address_D
0   E   Address_E
1   F   Address_F
2   G   Address_G
3   H   Address_G

通过添加新列组合“并排”

并排组合的方法是添加一列。你知道吗

示例:向客户信息数据框添加新列。你知道吗

import pandas as pd
customers = ['A', 'B', 'C', 'D']
addresses = ['Address_A', 'Address_B', 'Address_C', 'Address_D']
phones = [1,2,3,4]

df = pd.DataFrame({'Customer': customers,
                     'Info': addresses})
df['Phones'] = phones
df =
Customer    Info    Phones
0   A   Address_A   1
1   B   Address_B   2
2   C   Address_C   3
3   D   Address_D   4

真的在做。。。?

如果您试图为订单分配客户名称,则无法使用此处的数据。你知道吗

希望这有帮助。。你知道吗

相关问题 更多 >