我有一个数据帧,叫做“dem”:
code CBO SEXO \
47 58 NaN F
48 58 Ajudante de motorista F
49 58 Ajudante de motorista M
50 58 Ajudante de motorista M
51 58 Brasador NaN
52 58 Brasador M
53 58 Brasador M
FAIXA_IDADE ESCOLARIDADE
47 DE 21 A 30 ANOS Superior completo
48 MAIS DE 50 ANOS NaN
49 DE 21 A 30 ANOS Ginasial completo, ou Fundamental completo
50 DE 41 A 50 ANOS Colegial incompleto, ou Médio incompleto
51 DE 41 A 50 ANOS Colegial completo, ou Médio completo
52 DE 41 A 50 ANOS Colegial completo, ou Médio completo
53 DE 41 A 50 ANOS Ginasial completo, ou Fundamental completo
我想知道CBO列中有多少行包含单词“motorista”或“motorista”,ESCOLARIDADE列中包含单词“basical completo”。因此,结果应该是1(有三行CBO包含“motorista”,但只有一行ESCOLARIDADE包含“basical completo”)。你知道吗
我试过了:
try:
mot_fund_comp=dem.loc[dem.CBO.str.contains('motorista|Motorista')].ESCOLARIDADE.str.contains['Fundamental completo'].count()
except:
mot_fund_comp=0
我总是得到0分。你知道吗
和:
当我在下面的数据帧中应用同一行时,结果是1,当它应该是0时。。。你知道吗
dem:
code CBO SEXO \
89 59 Alimentador de linha de produção NaN
90 59 Alimentador de linha de produção M
91 59 Alimentador de linha de produção M
92 59 Alimentador de linha de produção M
93 59 Assistente de laboratório industrial F
94 59 Auxiliar de escritório M
95 59 Auxiliar de manutenção predial F
96 59 Balanceiro M
97 59 Comprador M
98 59 Desidratador de alimentos M
99 59 Desidratador de alimentos M
100 59 Desidratador de alimentos M
101 59 Desidratador de alimentos M
102 59 Mecânico de manutenção de máquinas, em geral M
103 59 Motorista de caminhão (rotas regionais e inter... M
104 59 Operador de filtro-prensa (tratamentos químico... M
105 59 Soldador M
106 59 Soldador M
107 59 Soldador M
FAIXA_IDADE ESCOLARIDADE
89 MAIS DE 50 ANOS Colegial completo, ou Médio completo
90 DE 21 A 30 ANOS NaN
91 DE 21 A 30 ANOS Colegial completo, ou Médio completo
92 DE 41 A 50 ANOS Ginasial incompleto, ou entre 4ª e 8ª série
93 DE 21 A 30 ANOS NaN
94 DE 21 A 30 ANOS Colegial completo, ou Médio completo
95 DE 41 A 50 ANOS Colegial completo, ou Médio completo
96 DE 21 A 30 ANOS Colegial completo, ou Médio completo
97 MAIS DE 50 ANOS Colegial completo, ou Médio completo
98 DE 21 A 30 ANOS Colegial completo, ou Médio completo
99 DE 31 A 40 ANOS Colegial completo, ou Médio completo
100 DE 31 A 40 ANOS Ginasial completo, ou Fundamental completo
101 MAIS DE 50 ANOS Colegial completo, ou Médio completo
102 DE 41 A 50 ANOS Colegial completo, ou Médio completo
103 DE 41 A 50 ANOS Colegial completo, ou Médio completo
104 DE 31 A 40 ANOS Colegial completo, ou Médio completo
105 DE 31 A 40 ANOS Colegial completo, ou Médio completo
106 DE 41 A 50 ANOS Colegial completo, ou Médio completo
107 MAIS DE 50 ANOS Colegial completo, ou Médio completo
有人会建议如何修复它还是建议另一种方法?你知道吗
感谢@roganjosh给我们灵感去寻找答案。你知道吗
我注意到,当我在contains函数中使用“|”作为OR运算符时,有时它工作正常,有时则不工作。如果我像这里这样使用它:
很好用。 但是,为了解决上面的问题,我必须对其进行调整,而不是在contains函数中使用“|”。我把代码改成:
另一个细节:由于某些原因,我无法跟踪,如果我使用“.count()”,值就会出错。如果我使用“.sum()”它工作得很好。你知道吗
给你。我保留了相同的列名,但将motorista替换为yes,motorista替换为yea,将completo替换为yes\u。你知道吗
它刚刚创建了一个新行,通过使用标志True来显示哪些行包含所需的值。你知道吗
然后:
提供所需的所有行:
显示第2行和第4行的值就是您要查找的值。从这里你可以很容易地收集你需要的行。你知道吗
相关问题 更多 >
编程相关推荐