pandas 如何将单元格转换为数据框

5f0d552i  于 2022-11-20  发布在  其他
关注(0)|答案(2)|浏览(161)

我有这样的数据:

df['profile'] = {
    'symbol': 'AAPL', 
    'price': 150.72, 
    'beta': 1.246644, 
    'volAvg': 89576498, 
    'mktCap': 2397668846469, 
    'lastDiv': 0.91, 
    'range': '129.04-182.94', 
    'changes': 1.93, 
    'companyName': 'Apple Inc.', 
    'currency': 'USD', 
    'cik': '0000320193', 
    'isin': 'US0378331005', 
    'cusip': '037833100',
    'isFund': False}

我如何将其分解为具有symbol、price、beta等标题的 Dataframe ,并使一行具有这些值?

h7wcgrx3

h7wcgrx31#

我猜你有这样的东西:

df = pd.DataFrame({
    'ID' : 0, 
    'status' : [{
        'symbol': 'AAPL', 
        'price': 150.72, 
        'beta': 1.246644, 
        'volAvg': 89576498, 
        'mktCap': 2397668846469, 
        'lastDiv': 0.91, 
        'range': '129.04-182.94', 
        'changes': 1.93, 
        'companyName': 'Apple Inc.', 
        'currency': 'USD', 
        'cik': '0000320193', 
        'isin': 'US0378331005', 
        'cusip': '037833100',
        'isFund': False}]
})
print(df)

   ID                                             status
0   0  {'symbol': 'AAPL', 'price': 150.72, 'beta': 1....

status列转换为新的 Dataframe ,如下所示:
第一次

iklwldmw

iklwldmw2#

示例

data = {'symbol': 'AAPL',
        'price': 150.72,
        'beta': 1.246644,
        'volAvg': 89576498,
        'mktCap': 2397668846469,
        'lastDiv': 0.91,
        'range': '129.04-182.94',
        'changes': 1.93,
        'companyName': 'Apple Inc.',
        'currency': 'USD',
        'cik': '0000320193',
        'isin': 'US0378331005',
        'cusip': '037833100',
        'isFund': False}

代码

pd.DataFrame([data])

结果

symbol  price   beta    volAvg  mktCap  lastDiv range   changes companyName currency    cik isin    cusip   isFund
0   AAPL    150.72  1.246644    89576498    2397668846469   0.91    129.04-182.94   1.93    Apple Inc.  USD 0000320193  US0378331005    037833100   False

相关问题