以長度來切欄位
Last Name欄位長度15
First Name欄位長度15
One 7
Two 7
Three 7
若是用pandas中的sep='\s+'來切的話,若姓名中有空格就可能會失敗
想請問python中是否有按字串長度來切分欄位的方法
資料如下
Last Name First Name One Two Three
Abdallah Johnetta 70.3 68.3 69.2
Ahle Delmy 70.3 68.3 69.2
Albares Cammy 91.0 85.0 87.7
Amigon Minna 89.0 95.0 92.3
Barfield Stephaine 60.3 58.3 59.2
Battle James 90.7 86.7 88.5
Benimadho Elvera 60.3 58.3 59.2
Blackwood Kallie 70.3 68.3 69.2
Bolognia Brock 71.0 65.0 67.7
Bowley Emerson 80.0 80.0 80.0
可以讀檔後先用長度切再放入dataframe
import pandas as pd
with open('filename.txt', 'r') as f:
lines = f.readlines()
data = list(
map(lambda x: [x[0:15], x[15:30], x[30:37], x[37:44], x[44:51]], lines)
)
column_names = data.pop(0)
df = pd.DataFrame(data, columns=column_names)
print(df)