我想在此dataframe列中分隔所有以大写字母开头的字符。
x-zumo-auth
而且我已经使用了一个允许我执行该功能的功能,该功能似乎不起作用
Unicainstancia_DF['TesteNomeJuiz']
0 ClinicadeOlhosSaoPauloLtda-Me
1 PatriciaAparecidaMendesFerreira
2 CarraroHoldingParticipaçõesLtda
3 IsadoraCentofantiFonseca
4 Petruso&PetrusoSupermercadosLtda
....
Name: TesteNomeJuiz, Length: 1510, dtype: object
def camel_case_split(identifier):
matches = finditer('.+?(?:(?<=[a-z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])|$)', identifier)
return [m.group(0) for m in matches]
Unicainstancia_DF['TesteNomeJuiz'].astype('str')
splitted = re.sub('([A-Z][a-z]+)', r' \1', re.sub('([A-Z]+)', r' \1', Unicainstancia_DF['TesteNomeJuiz'])).split
而且我还尝试调用info()函数,但不起作用
TypeError
Traceback (most recent call last)
<ipython-input-56-00cc9d0b832f> in <module>
1 Unicainstancia_DF['TesteNomeJuiz'].astype('str')
--> 2 splitted = re.sub('([A-Z][a-z]+)', r' \1', re.sub('([A-Z]+)', r' \1',
Unicainstancia_DF['TesteNomeJuiz'])).split
F:\Anaconda\lib\re.py in sub(pattern, repl, string, count, flags)
208 a callable, it's passed the Match object and must return
209 a replacement string to be used."""
--> 210 return _compile(pattern, flags).sub(repl, string, count)
211
212 def subn(pattern, repl, string, count=0, flags=0):
TypeError: expected string or bytes-like object
答案 0 :(得分:0)
您只能在pandas.DataFrame上调用.info(),而不能在pandas.Series上调用。
假设Unicainstancia_DF是一个DataFrame,则可以调用:Unicainstancia_DF.info()
,而不是Unicainstancia_DF['TesteNomeJuiz'].info()
在使用Unicainstancia_DF['TesteNomeJuiz']
时,您正在使用序列/列选择器-
您已经从DataFrame中选择了一个列(或“系列”),并打算对其进行处理。
从您的示例中,我不清楚您要对该系列做什么。如果要在A-Z上分割,则可以执行以下操作:
import re
print([re.split(r'[A-Z]', x) for x in Unicainstancia_DF['TesteNomeJuiz']]
但是,正如克里斯建议的那样,如果您澄清期望的输出以及要存储拆分的位置,我可以更具体地说明。您实际上是否想在A-Z上分割似乎令人怀疑-更可能是您想在A-Z与任何其他字符之间的边界上分割。是这样吗?