Python 将熊猫列表拆分为不同的列并计算计数

Python 将熊猫列表拆分为不同的列并计算计数,python,pandas,Python,Pandas,我有一个包含列表元素的列名称ID的熊猫数据框架。因此,我想将列表列拆分为不同的列 id partner_id ids 1 12 ["1","4","187275","187358","946475"] 2 12 ["1","191","28925","31441"] 3 16

我有一个包含列表元素的列名称ID的熊猫数据框架。因此,我想将列表列拆分为不同的列

id          partner_id                       ids
1                12             ["1","4","187275","187358","946475"]
2                12             ["1","191","28925","31441"]
3                16             ["1","2","293915","1573130","293918"]
4                11             ["1","13","294064","1238496"]
5                16             ["1","153339","155025","155029"]
期望输出:

我所尝试的:

df2 = pd.DataFrame(df.parent_path.values.tolist(), index=df.index)
完整代码:


但它并没有像这里那样拆分列:

我想您很接近了,只用于附加到原始列,用于提取列,然后在必要时将字符串转换为数字和最后重命名的列名称:

还需要通过json.loads将列表的字符串报告到列表:


我认为您很接近,仅用于附加到原始,用于提取列,然后在必要时将字符串转换为数字,以及最后重命名的列名称:

还需要通过json.loads将列表的字符串报告到列表:


@TomRon我已经在我的查询中添加了链接,先生@TomRon我已经在我的查询中添加了链接,先生!谢谢你的回答。它现在显示ValueError:无法将字符串转换为浮点:'[1,13,294266,294276,312828,1007738]'@AlwaysSNNY-您可以测试pd.DataFrame[json.loadsx for x in df.pop'ids'],index=df.index吗?谢谢您的回答。它现在显示ValueError:无法将字符串转换为浮点:'[1,13,294266,294276,312828,1007738]'@AlwaysSNNY-您可以在df.pop'ids']中测试pd.DataFrame[json.loadsx for x,index=df.index吗?
df2 = pd.DataFrame(df.parent_path.values.tolist(), index=df.index)
import pandas as pd
import numpy as np
pd.set_option('display.max_columns', 85)
pd.set_option('display.max_rows', 85)
df = pd.read_csv('../dataset/property_location_count.csv',low_memory=False)
df2 = pd.DataFrame(df.ids.values.tolist(), index=df.index)
import json

df = (df.join(pd.DataFrame([json.loads(x) for x in df.pop('ids')], index=df.index)
        .astype(float)
        .astype('Int64')
        .rename(columns=lambda x: f'id{x+1}')))
print (df)
   id  partner_id  id1     id2     id3      id4     id5
0   1          12    1       4  187275   187358  946475
1   2          12    1     191   28925    31441     NaN
2   3          16    1       2  293915  1573130  293918
3   4          11    1      13  294064  1238496     NaN
4   5          16    1  153339  155025   155029     NaN