pyspark - 在 pyspark 中选择列列表后,其余未选择的列会被隐藏吗?
问题描述
在上表中,我有 5 列并选择了 2 列并保存为新数据框。当我尝试检索有关新数据帧的信息时,从未选择的列返回结果,而不是将错误作为数据帧中不存在的列。
示例代码:
df1 = df.select('id', 'subject1')
df1.filter('subject2' > 50).show()
上面的数据框没有subject2,但它的返回结果而不是抛出错误。如何从内存中完全删除列列表?
输出数据帧结果:
解决方案
无法重现您的情况。通常,当您选择某些列时 - 只有那些可用于过滤。你应该得到一个类型错误,条件应该是字符串或列。请确保在上面的代码中您没有将 subject2 指定为对象。
也试试:
df1 = df1.drop('subject2', 'subject3', 'subject4')
希望这可以帮助。
推荐阅读
- facebook-php-sdk - 如何使用 Facebook Marketing API for PHP 创建广告?
- amazon-web-services - 在 AWS ec2 上连接 Jupyter notebook 时如何解决“PermissionError: [Errno 13] Permission denied”?
- java - 传递给 CompletableFuture.allOf() 的所有期货都会运行吗?
- c# - 为什么复合控件点击事件不触发?
- python - 如何在python生成器中运行所有斐波那契数
- twilio - 从代理服务直接切换到 Studio Flow 时,Flex 与 SMS 的集成不起作用
- java - 在 ArrayList 中检索已更改对象的索引的方法?
- react-native - 如何在 react-native-gifted-chat 中将消息从子输入传递到父聊天
- android - 如何用 Retrofit2 和 ArrayList 解析?
- visual-studio-code - 使用链接的css文件在html文件中没有ctrl +空格的VS Code自动完成