gpt4 book ai didi

Python - 数据框列在 '.' 之后用大写字母重命名

转载 作者:行者123 更新时间:2023-12-04 15:16:41 26 4
gpt4 key购买 nike

我有一些列遵循“abc.def”模式,我正尝试使用函数将其更改为“abcDef”。我可以使用 df.rename(columns={'abc.def': 'abcDef'}, inplace = True) 来做到这一点,但我正在寻找一种可以应用于不同数据帧的更通用的方法。我是为简单的字符串做的,但我不知道如何将它应用于列名。我试图将列名添加到列表中并将函数附加到列表中,但这也不起作用。

我的 df 是:

import pandas as pd
import re


data = {'end.date': ['01/10/2020 15:23', '01/10/2020 16:31', '01/10/2020 16:20', '01/10/2020 11:00'],
'start.date': ['01/10/2020 13:38', '01/10/2020 14:49', '01/10/2020 14:30','01/10/2020 14:30']
}

df = pd.DataFrame(data, columns = ['end.Date','start.date'])

# below is my go at the text.
text = 'abs.d'
splitFilter = re.compile('([.!?]\s*)')
splitColumnName = splitFilter.split(text)
print(splitColumnName)

final = ''.join([i.capitalize() for i in splitColumnName])
final = final.replace('.', '')
print(final)

最佳答案

我想你想要这样的东西?

import pandas as pd
import re


data = {'end.date': ['01/10/2020 15:23', '01/10/2020 16:31', '01/10/2020 16:20', '01/10/2020 11:00'],
'start.date': ['01/10/2020 13:38', '01/10/2020 14:49', '01/10/2020 14:30','01/10/2020 14:30']
}

df = pd.DataFrame(data, columns = ['end.Date','start.date'])

# below is my go at the text.
def formatColumn(column) :
splitFilter = re.compile('([.!?]\s*)')
splitColumnName = splitFilter.split(column)

final = ''.join([i.capitalize() for i in splitColumnName])
final = final.replace('.', '')
return final[0].lower() + final[1:]

df.rename(columns=dict(zip(df.columns, [formatColumn(c) for c in df.columns])))

关于Python - 数据框列在 '.' 之后用大写字母重命名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64206676/

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