vaex 列名称更改

您好,我刚刚开始使用 Python 中的 Vaex。我有一个列名混乱的数据集。我正在尝试用“_”替换空格。

在熊猫中,我能够 df.column = df.columns.str.replace(' ', '_')

但在 Vaex

df_column = df.column_names.str.replace('\s', '_', regex=True)

我收到以下错误


AttributeError Traceback(最近一次调用)在 ----> 1 df_new = df.column_names.str.replace('\s', '_', regex=True) AttributeError: 'list' object has no attribute 'str'

有谁知道我可能做错了什么?


幕布斯6054654
浏览 128回答 1
1回答

慕后森

在 Vaex 中,列实际上是“表达式”。表达式允许您在执行常规数据帧操作时在幕后构建某种计算图。但是,这要求列名尽可能“干净”。因此像“2”或“2.5”这样的列名是不允许的,因为表达式系统可以将它们解释为数字而不是列名。还有列名,如“first-name”,表达式系统可以解释为 df['first'] - df['name']。为了避免这种情况,vaex 会巧妙地重命名列,以便它们可以在表达式系统中使用。这实际上非常复杂。顺便说一句,您始终可以通过 df.get_column_names(alias=True) 访问原始名称。如果你想重命名列,你应该使用df.rename(name, new_name)我希望这有帮助!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python