我正在使用一个大的df(接近200万行),需要从另一个df创建一个新列。任务似乎很简单:名为“PTCODICEFISCALE”的起始列包含一个由11个或16个字符组成的字符串,没有其他可能性,也没有NaN。 我必须创建的新列(“COGNOME”)必须包含“PTCODICEFISCALE”的前3个字符,前提是“PTCODICEFISCALE”第n行的长度为16;否则,当长度为11时,新列应该不包含任何内容,我认为这意味着“NaN”。你知道吗
我试过这个:
csv.loc[len(csv['PTCODICEFISCALE']) == 16, 'COGNOME'] = csv.loc[csv.PTCODICEFISCALE.str[:3]]
在输出中,将显示此错误消息:
ValueError: cannot index with vector containing NA / NaN values
我不明白。 我确信“PTCODICEFISCALE”列中没有NA/NaN。你知道吗
有什么帮助吗?谢谢!你知道吗
备注:“csv”是数据帧的名称
我想你需要^{} 和^{} 的条件:
样品:
相关问题 更多 >
编程相关推荐