在pandas中将行数据转换为列数据

2024-06-16 12:45:38 发布

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

我有这样的数据: 字段值

0   CRD 146099
1   LegalName   CHUNG, BUCK CHWEE
2   BusName PRINCIPA FINANCIAL ADVISORS
3   URL https://adviserinfo.sec.gov/IAPD/content/ViewF...
4   CRD 170701
5   LegalName   MESSINA AND ASSOCIATES, INC
6   BusName FINANCIAL RESOURCES GROUP
7   URL https://adviserinfo.sec.gov/IAPD/content/ViewF...
8   CRD 133630
9   LegalName   ALAN EDELMAN
10  BusName EDELMAN, ALAN
11  URL https://adviserinfo.sec.gov/IAPD/content/ViewF...
12  CRD 131792
13  LegalName   RESOURCE MANAGEMENT LLC
14  BusName RESOURCE MANAGEMENT LLC
15  URL https://adviserinfo.sec.gov/IAPD/content/ViewF...

如何将其转换为CRD、LegalName、BusName和URL列。我试着用钯熔体但这似乎不是我要找的。在


Tags: httpsurlseccontentresourcegovcrdfinancial
2条回答

先对2列使用^{},然后按^{}创建计数器Series,按^{}创建{},然后按^{}进行整形:

df[['Field','Value']] = df['Value'].str.split(n=1, expand=True)

groups = df.groupby('Field').cumcount()
df = df.set_index([groups, 'Field'])['Value'].unstack()
print (df)
Field                      BusName     CRD                    LegalName  \
0      PRINCIPA FINANCIAL ADVISORS  146099            CHUNG, BUCK CHWEE   
1        FINANCIAL RESOURCES GROUP  170701  MESSINA AND ASSOCIATES, INC   
2                    EDELMAN, ALAN  133630                 ALAN EDELMAN   
3          RESOURCE MANAGEMENT LLC  131792      RESOURCE MANAGEMENT LLC   

Field                                                URL  
0      https://adviserinfo.sec.gov/IAPD/content/ViewF...  
1      https://adviserinfo.sec.gov/IAPD/content/ViewF...  
2      https://adviserinfo.sec.gov/IAPD/content/ViewF...  
3      https://adviserinfo.sec.gov/IAPD/content/ViewF...  

我想你在找数据帧。transpose

相关问题 更多 >