使用Pandas从CSV文件的列中获取或编辑字符串

时间:2018-12-10 14:40:29

标签: python pandas

我的列中名为category的行看起来像这样:

{"id":342,"name":"Web","slug":"technology/web","position":15,"parent_id":16,"color":6526716,"urls":{"web":{"discover":"http://www.kickstarter.com/discover/categories/technology/web"}}}}

我想编辑此列,以便仅将"parent_id":**16**旁边的数字保留在该列的每一行中,我该怎么做?

我正在尝试从此csv文件中为数据科学项目获取类别功能,该数字代表它们。

我能够通过以下方式读取文件和列:

import pandas as pd

df = pd.read_csv(r"filepath")
category = df.category

编辑: 我想要的列是:

    category
       15
       11
        1
        3
        5

将除parent_id数字以外的所有内容都剥离,因为这些数字代表16之类的技术。列的行也接近3800

1 个答案:

答案 0 :(得分:0)

您在这里:

import pandas as pd

df = pd.DataFrame(
    {'col1' : [{"id":342,"name":"Web","slug":"technology/web","position":15,"parent_id":16}, 
               {"id":342,"name":"Web","slug":"technology/web","position":15,"parent_id":18}],
     'col2' : ['a', 'b']
    })

pd.concat([df, df['col1'].apply(pd.Series)['parent_id']], axis = 1).drop('col1', axis = 1)