Pandas 用通配符重命名列

标签 pandas rename wildcard

我的 df 看起来像这样:

Datum   Zeit    Temperatur[°C]     Luftdruck   Windgeschwindigkeit[m/s]    Windrichtung[Grad]  Relative Luftfeuchtigkeit[%]    Globalstrahlung[W/m²]

现在我想像这样重命名列:#

wetterdaten.rename(columns={'Temperatur%': 'Temperatur', 'Luftdruck[hPa]': 'Luftdruck'}, inplace=True)

% 是通配符。 但它当然不会像这样工作。

列名的开头在日志数据中总是相同的, 但结局会暂时改变。

最佳答案

您可以过滤列并获取名称:

wetterdaten.rename(columns={wetterdaten.filter(regex='Temperatur.*').columns[0]: 'Temperatur', 
                            wetterdaten.filter(regex='Luftdruck.*').columns[0]: 'Luftdruck'},
                   inplace=True)

关于 Pandas 用通配符重命名列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46706850/

相关文章:

python - 计算具有特定值的一行之后的两行

bash - 通过在 bash 中向文件名添加数字来重命名文件

java - 为什么我们可以实例化 Pair<T> 而不能实例化 Pair<?>

python - 从词袋数据框到数组的更快的 Python 实现

python - pandas if else 多列条件

python - 从由嵌套元组键控的 python 字典重建向量场

SQL 通配符 : performance overhead?

linux - 如何使用 -exec 查找和重命名所有文件

arrays - 命名数组的一维

SQL 更新替换语句