鱼C论坛

 找回密码
 立即注册
查看: 3897|回复: 3

"'str' object has no attribute 'iloc'"

[复制链接]
发表于 2020-12-8 10:10:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
df4:
S0G                  S1G                 S2G              S3G        L1G        L2G         L3G
[无异常]        [异常1]                                               [异常2]
如果L3G不为空,输出L3G值,如果L3G为空,L2G不为空则输出L2G值,以此类推......
def get_result(S0G,S1G,S2G,S3G,L1G,L2G,L3G):
    if pd.notnull(L3G):
        return L3G
    elif pd.notnull(L2G):
        return L2G
    elif pd.notnull(L1G):
        return L1G
    elif pd.notnull(S3G):
        return S3G
    elif pd.notnull(S2G):
        return S2G
    elif pd.notnull(S1G):
        return S1G
    else:
        return S0G
df4['最终输出结果'] = df4.apply(lambda x:get_result(x['S0G'].iloc[0],x['S1G'].iloc[0],x['S2G'].iloc[0],x['S3G'].iloc[0],x['L1G'].iloc[0],x['L2G'].iloc[0],x['L3G'].iloc[0]),axis=1)

最后:AttributeError: ("'str' object has no attribute 'iloc'", 'occurred at index 0')
请问这是什么问题?如何解决呀?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-8 12:21:21 | 显示全部楼层
本帖最后由 suchocolate 于 2020-12-8 12:26 编辑

x['S0G']取出的是字符串,df4的原始数据能提供一下吗?上面的格式看的不准哪个空哪个不空。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-10 10:20:01 | 显示全部楼层
suchocolate 发表于 2020-12-8 12:21
x['S0G']取出的是字符串,df4的原始数据能提供一下吗?上面的格式看的不准哪个空哪个不空。

已解决,x['S0G']就已经把需要的字符串取出来了,iloc是多余的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-10 10:57:52 | 显示全部楼层
看你这个写法,很奇怪啊,既然用了自定义函数,用了apply,怎么还用lambda传入?直接用函数来操作处理不行么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-17 03:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表