从python中的数据框中提取字符串

时间:2016-12-04 20:59:23

标签: python pandas

我是Python新手,我想从数据框中提取字符串数据。这是我的数据框: enter image description here 哪个州的县最多?

不幸的是我无法提取字符串!这是我的代码:

import pandas as pd
census_df = pd.read_csv('census.csv')

def answer_five():
    return census_df[census_df['COUNTY']==census_df['COUNTY'].max()]['STATE']
answer_five()

3 个答案:

答案 0 :(得分:0)

这个怎么样:

import pandas as pd

census_df = pd.read_csv('census.csv')

def answer_five():
    """
    Returns the 'STATE' corresponding to the max 'COUNTY' value
    """
    max_county = census_df['COUNTY'].max()
    s = census_df.loc[census_df['COUNTY']==max_county, 'STATE']
    return s

answer_five()

这应输出一个pd.Series对象,其中'STATE'值的最大值为'COUNTY'。如果你只想要值而不是Series(如你所说的问题,并且因为在你的图像中,COUNTY只有1个最大值)那么return s[0](而不是return s)应该做

答案 1 :(得分:0)

def answer_five():
   return census_df.groupby('STNAME')['COUNTY'].nunique().idxmax()

您可以使用按州名称汇总数据,然后计算唯一县并返回最大计数ID。

答案 2 :(得分:0)

由于某些原因,我遇到了相同的问题,因为我尝试使用.item()并设法提取所需的确切值。

对于您而言,它看起来像:

return census_df[census_df['COUNTY'] == census_df['COUNTY'].max()]['STATE'].item()