我有一个快速的python问题。
我想从较大表中一列的每个单元格中的数字列表中提取数字“ 7”。数字7表示被采访的家庭有冰箱。
这是我当前的代码:
raw_data = pd.read_csv('raw_data.csv')
test = raw_data["s6q68_electric_appliance"]
def check_has_refrigerator(input_value):
if "7" in input_value:
return True
return False
raw_data["has_refrigerator"] = test.apply(check_has_refrigerator)
但是上面的代码不起作用,因为python无法遍历浮点数。我的问题是,如何更改每个单元格中的值以字符串形式显示,以允许python在每个单元格中提取数字“ 7”。在给定的单元格内,随机显示数字,例如“ 7 10 11 12 13”,我只想提取数字“ 7”。
谢谢。
答案 0 :(得分:0)
如果我理解正确性,则您有一个字符串,该字符串代表用空格分隔的int列表。 因此,您需要split(''),然后检查是否有7个?
例如
set_of_int = set(text.split(' '))
seven_is_in = ("7" in set_of_int)
或
set_of_int = set(map(int,text.split(' ')))
seven_is_in = (7 in set_of_int)
答案 1 :(得分:0)
我想这很简单:
def check_has_refrigerator(input_value):
if "7" in input_value.split(' '):
return True
return False
假设input_value看起来像“ 7 10 11 12 13”。
答案 2 :(得分:0)
谢谢大家。我是python的新手,所以对于最初的问题Steven不太清楚,我深表歉意!现在可以使用,我使用了G.Anderson的方法。谢谢!