【问题标题】:how do I get data from a column from a csv that I have loaded with pandas如何从我用 pandas 加载的 csv 的列中获取数据
【发布时间】:2017-06-22 20:37:30
【问题描述】:

我怀疑这是一个基本问题。我已经用熊猫加载了一个 csv 文件。该文件在几个标题下有文献元数据,包括性别。我想从 GENDER 标题下提取所有性别数据,将男性和女性分开,并计算每个人的实例。帮忙?

【问题讨论】:

  • df.loc[:,'GENDER']
  • 试过什么?例子?你希望输出是什么样子的?
  • 我觉得你应该做一些pandas教程here
  • 您应该展示输入数据的样本、预期输出和实际输出以获得一些质量帮助。

标签: python csv pandas


【解决方案1】:

听起来像你想要的:

df['GENDER'].value_counts()

【讨论】:

    【解决方案2】:

    需要更多信息,但是...

    如果你有一些 csv,例如:

    gender,firstname,lastname,bookname
    male,homer,simpson,black and white
    female,marge,my family
    male,bart,simpson,my first book
    female,lisa,simpson,jazz in my life
    female,margaret,i am baby
    

    而你想提取所有的性别数据,那么试试:

    import pandas
    
    # read source csv
    # gender,firstname,lastname,bookname
    df = pandas.read_csv('source.csv')
    
    # male's data
    print("data from males")
    print(df.where(df['gender'] == 'male').dropna().to_string(index=False))
    
    # female's data
    print("data from females")
    print(df.where(df['gender'] == 'female').dropna().to_string(index=False))
    
    # statistic by gender
    print("gender statistic")
    print("males: {}".format(df['gender'].where(df['gender'] == 'male').count()))
    print("females: {}".format(df['gender'].where(df['gender'] == 'female').count()))
    

    data from males
    gender firstname lastname         bookname
     male     homer  simpson  black and white
     male      bart  simpson    my first book
    data from females
    gender firstname lastname         bookname
    female      lisa  simpson  jazz in my life
    gender statistic
    males: 2
    females: 3
    

    但我不确定我是否理解正确。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-31
      • 1970-01-01
      • 2017-05-01
      • 2022-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多