当从\u项更改为从\u di时,从\u项删除的方法将抛出错误

2024-05-12 23:39:07 发布

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

我想用建议的from_dict修复一个很快就要去润滑的方法from_items

pd.set_option('display.max_columns', 50)
pd.set_option('display.max_rows', 50)

Test_Data = [('originating_system_id', ['CL', 'CL', 'CL', 'CL']),
             ('security_type1', ['CORP', 'CORP', 'CORP', 'CORP']),
             ('state', ['Traded', 'Covered', 'Traded Away', 'Traded']),
             ('trading_book', ['LCAAAAA', 'NUBBBBB', 'EDFGSFG', 'PDFEFGR'])
             ]
df = pd.DataFrame.from_items(Test_Data)
print(df)

  originating_system_id     security_type1        state trading_book
0                    CL               CORP       Traded      LCAAAAA
1                    CL               CORP      Covered      NUBBBBB
2                    CL               CORP  Traded Away      EDFGSFG
3                    CL               CORP       Traded      PDFEFGR

当我在df赋值时更改为from_dict

df = pd.DataFrame.from_dict(Test_Data)

我希望应用筛选器时出现以下行错误:

m1 = ~df['trading_book'].str.startswith(tuple(prefixes))
KeyError: 'trading_book'

from_dict的结构是否不同?除了from_items还有其他选择吗


Tags: fromtestdfdatacldisplayitemsdict
1条回答
网友
1楼 · 发布于 2024-05-12 23:39:07

对于我来说,将其转换为字典:

df = pd.DataFrame(dict(Test_Data))
#another alternative solution
#df = pd.DataFrame({a:b for a, b in Test_Data})
print(df)
  originating_system_id rbc_security_type1        state trading_book
0                    CL               CORP       Traded      LCAAAAA
1                    CL               CORP      Covered      NUBBBBB
2                    CL               CORP  Traded Away      EDFGSFG
3                    CL               CORP       Traded      PDFEFGR

详细信息

print(dict(Test_Data)
{'originating_system_id': ['CL', 'CL', 'CL', 'CL'], 
 'rbc_security_type1': ['CORP', 'CORP', 'CORP', 'CORP'],
 'state': ['Traded', 'Covered', 'Traded Away', 'Traded'], 
 'trading_book': ['LCAAAAA', 'NUBBBBB', 'EDFGSFG', 'PDFEFGR']

相关问题 更多 >