gpt4 book ai didi

Python:去掉成对的列名称

转载 作者:行者123 更新时间:2023-12-02 01:37:02 25 4
gpt4 key购买 nike

我有一个 DataFrame,其列如下所示:

df=pd.DataFrame(columns=['(NYSE_close, close)','(NYSE_close, open)','(NYSE_close, volume)', '(NASDAQ_close, close)','(NASDAQ_close, open)','(NASDAQ_close, volume)'])

df:
(NYSE_close, close) (NYSE_close, open) (NYSE_close, volume) (NASDAQ_close, close) (NASDAQ_close, open) (NASDAQ_close, volume)

我想删除下划线后面的所有内容并附加逗号后面的所有内容以获得以下内容:

df:
NYSE_close NYSE_open NYSE_volume NASDAQ_close NASDAQ_open NASDAQ_volume

我尝试删除列名称,但它用 nan 替换了它。关于如何做到这一点有什么建议吗?

提前谢谢您。

最佳答案

您可以使用re.sub提取列名的适当部分并将其替换为:

import re

df=pd.DataFrame(columns=['(NYSE_close, close)','(NYSE_close, open)','(NYSE_close, volume)', '(NASDAQ_close, close)','(NASDAQ_close, open)','(NASDAQ_close, volume)'])
df.columns = [re.sub(r'\(([^_]+_)\w+, (\w+)\)', r'\1\2', c) for c in df.columns]

输出:

Empty DataFrame
Columns: [NYSE_close, NYSE_open, NYSE_volume, NASDAQ_close, NASDAQ_open, NASDAQ_volume]
Index: []

关于Python:去掉成对的列名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72193939/

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