gpt4 book ai didi

python - 如何将字符串转换为 Python 中的代码?

转载 作者:太空宇宙 更新时间:2023-11-03 13:37:03 24 4
gpt4 key购买 nike

将字符串转换为代码

注意事项:

  • 我是编码新手,正在测试各种要学习的东西;
  • 即是的,我确信有更好的方法可以实现我想要做的事情;
  • 但是,我想知道任何替代/更有效的方法;
  • 我还想知道如何将字符串转换为代码以使用此技术实现我的目标

到目前为止,我已经浏览了论坛和谷歌,并看到了一些与此相关的主题,但我无法在这里解决这些问题,或者从我的角度准确回答问题,包括使用 evalexec

场景

  • 我有一个数据框:london 有 23 列
  • 我想创建一个数据框,显示所有具有“NaN”值的行
  • 我曾尝试使用 .isnull(),但它似乎一次只能处理一个列
  • 我试图通过使用 | 返回任何列中的任何行来实现我想要的结果,其中 .isnull() 返回 True

只有两列的这种工作的例子是:

london[(london['Events'].isnull() | london['Max Gust SpeedKm/h'].isnull())]

但是,我需要用所有 23 列来实现这个结果,所以我尝试用一​​些代码来完成这个。

尝试的解决方案

  • 创建一个包含所有列标题的字符串
  • london[(london['列标题'].isnull() 后跟 | 然后是下一列
  • 然后在上面工作示例中显示的容器中使用此字符串
  • 伦敦[(string)]

我已经成功地使用以下方法创建了我需要的字符串:

string = []
for i in (london.columns.values):
string.append("london['" + i + "'].isnull()")
string.append(" | ")
del string[-1]
final_string = "".join(string)

最后,当我尝试实现最后一步时,我不知道如何将这个字符串转换成可用代码。

例如:

now = eval(final_string)
london[now]

导致:
NotImplementedError: 'Call' 节点未实现

提前谢谢你。

最佳答案

这是在数据框中使用 NaN 值选择 的最简单方法:

df[pd.isnull(df).any(axis=1)]

关于python - 如何将字符串转换为 Python 中的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38165708/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com