pandas 在python中如何将多个带有键值的列表合并到一个 Dataframe 中

gr8qqesn  于 2023-03-16  发布在  Python
关注(0)|答案(1)|浏览(160)

我是python的新手,一般都是使用 Dataframe 的。
我正在使用selenium,从linkedin的个人资料中获取一些信息,我创建了一个存储姓名的列表,另一个存储位置,然后创建了一个关键值为job,company,date,job_location,description的exp列表,还有一个关键值为college和edegree的ed列表。
例如:

name = Lisa
location = us
exp = {job : software engineer
      company : amazon
      date : 03/12
      job location : seattle
      description : worked as a software dev
       }
ed = { college : standford
       degree : computer science
      }

需要注意的是,对于名称/位置列表中的一个值,exp和艾德可以包含多个值。
例如,丽莎可以在不同的公司和不同的地点从事软件工程和qa等工作,同样,丽莎可以在不同的大学获得两个学位。
例如:

name = Lisa
location = us
exp = {job : software engineer, technical lead
      company : amazon, spectrum
      date : 03/12, 11/27
      job location : seattle, california
      description : worked as a software dev, manager
       }
ed = { college : standford, carleton
       degree : computer science, human resources
      }

理想情况下,我希望将其存储为 Dataframe ,以便以后下载到csv中,其中column包含列表数据,row是键/列表,这样它看起来就像

column 1    column 2
name          Lisa        mark 
location      us          us
job           se          se
company       amazon      amazon
date          3/12        3/12
job_location  seattle     seattle
description   worked as... worked
college       standford    standford
degree        cs          cs

总之,我想取4个列表(name、location、exp、艾德),其中两个是字典列表(exp和ed),并将其放入单个 Dataframe 中
我在谷歌上搜索这个,发现这个geek 4geeks教程:https://www.geeksforgeeks.org/how-to-concatenate-two-or-more-pandas-dataframes/
我的尝试是:配置文件_dict = pd.concat([配置文件_导入,导出,艾德],轴=1,连接=“内部”)
但我得到了以下错误:

TypeError: cannot concatenate object of type '<class 'dict'>'; only Series and DataFrame objs are valid
    python-BaseException

这让我觉得我错过了如何将字典值放入 Dataframe ,而不是尝试获取不允许或无用的键。

ljsrvy3e

ljsrvy3e1#

字典中不使用=号,而是创建键" key":和值"this is the value"

import pandas as pd

name = 'Lisa'
location = 'USA'

exp = {
    'job': 'software engineer',
    'company':'amazon',
      'date':  '03/12',
      'job location': 'seattle',
      'description': 'worked as a software dev',
      'college': 'standford',
      'degree': 'computer science'
    }
df = pd.Series(exp)

print(f"Name: {name}, Location: {location} ")

print(df)

这是完整代码的一个示例片段。

相关问题