Python 在pandas中格式化.txt文件
我想采用以下格式的.txt文件:Python 在pandas中格式化.txt文件,python,csv,pandas,file-io,data-science,Python,Csv,Pandas,File Io,Data Science,我想采用以下格式的.txt文件: StateOne[edit] RegionOne (UniversityOne)[1] RegionTwo (UniversityTwo) RegionThree (UniversityThree)[2] 并将这些数据清理并以这种格式的数据帧返回: State RegionName 0 StateOne RegionOne 1 StateOne RegionTwo 2 StateOne RegionThree 例如,我
StateOne[edit]
RegionOne (UniversityOne)[1]
RegionTwo (UniversityTwo)
RegionThree (UniversityThree)[2]
并将这些数据清理并以这种格式的数据帧返回:
State RegionName
0 StateOne RegionOne
1 StateOne RegionTwo
2 StateOne RegionThree
例如,我有:
Alabama[edit]
Auburn (Auburn University)[1]
Florence (University of North Alabama)
Jacksonville (Jacksonville State University)[2]
我需要将其转换为数据帧:
State RegionName
0 Alabama Auburn
1 Alabama Florence
2 Alabama Jacksonville
我有点困惑如何删除像
“[”
这样的字符,并将它们命名为“State”
。对于“RegionName”
,当从中删除每个字符时(“
在需要时结束。在pandas非常新,对一种快速简便的方法感到困惑。这是假设状态始终具有带[]
的“编辑”和区域()
诀窍是在“[”和“(”(视情况而定)中执行一个键,并保持在字符串的第一部分
string = '''Alabama[edit]
Auburn (Auburn University)[1]
Florence (University of North Alabama)
Jacksonville (Jacksonville State University)[2]'''
i = 0
print(' \t' + 'State' + '\t' + 'RegionName')
for line in string.split('\n'): # Split by the line breaks
if line == '': # We skip the line if it is empty
continue
if 'edit' in line: # We look for some "edit" and
state, spam = line.split('[') # store it in a variable
continue # When we find other
# it will replace
region_name, spam = line.split(' (')
i += 1 # The same but with '('
print(str(i) + '\t' + state + '\t' + region_name)
我希望这会有帮助!一般来说,如果你至少尝试过,得到答案会有帮助,并表示感谢你的建议。我是堆栈溢出新手,所以我在这里学习规则。我尝试了
str.split()
方法,但似乎没有得到我想要的结果。非常感谢你的帮助,我非常感谢你的帮助。