Python 如何以正确的方式将列拆分为2?

Python 如何以正确的方式将列拆分为2?,python,pandas,dataframe,split,debian,Python,Pandas,Dataframe,Split,Debian,我正在从网站上抓取表格,并将其放入Excel文件中。 我的目标是以正确的方式将一列拆分为两列 我要拆分的列:“FLIGHT” 我要这张表格: 第一个示例:KL744-->KL和0744 第二个示例:BE1013-->BE和1013 因此,我需要分离前2个字符(在第一列中),然后分离下一个字符,即1-2-3-4个字符。如果4是OK,我保留它,如果3,我想在它前面加0,如果2:我想在它前面加00(所以我的目标是在第二列中得到4个字符/数字) 我该怎么做 这里是我的相关代码,它已经包含了一个格式化代码

我正在从网站上抓取表格,并将其放入Excel文件中。 我的目标是以正确的方式将一列拆分为两列

我要拆分的列:“FLIGHT”

我要这张表格:

第一个示例:KL744-->KL和0744

第二个示例:BE1013-->BE和1013

因此,我需要分离前2个字符(在第一列中),然后分离下一个字符,即1-2-3-4个字符。如果4是OK,我保留它,如果3,我想在它前面加0,如果2:我想在它前面加00(所以我的目标是在第二列中得到4个字符/数字)

我该怎么做

这里是我的相关代码,它已经包含了一个格式化代码

df2 = pd.DataFrame(datatable,columns = cols)
df2["UPLOAD_TIME"] = datetime.now()
mask = np.column_stack([df2[col].astype(str).str.contains(r"Scheduled", na=True) for col in df2])
df3 = df2.loc[~mask.any(axis=1)] 

if os.path.isfile("output.csv"):
    df1 = pd.read_csv("output.csv", sep=";")
    df4 = pd.concat([df1,df3])
    df4.to_csv("output.csv", index=False, sep=";")

else:
    df3.to_csv
    df3.to_csv("output.csv", index=False, sep=";")
这里是我表格中的excel prt sc:

您可以使用:

我相信您的代码需要:

df2 = pd.DataFrame(datatable,columns = cols)
df2['a'] = df2['FLIGHT'].str[:2]
df2['b'] = df2['FLIGHT'].str[2:].str.zfill(4)
df2["UPLOAD_TIME"] = datetime.now()
...
...

“([A-Z]+)(\d+”?有时我的第一个字符以0(零)开头。我可以写什么来代替这个:“'KL744','BE1013'”来拆分此列中的所有数据?@Harley您不需要使用答案的第一行。因为你没有给我们文本数据。只需使用第二行和第三行就可以完成工作。或者您是否有多个列包含此数据?您将偏离轨道。操作系统并不重要。重要的是你使用的熊猫版本。
df2 = pd.DataFrame(datatable,columns = cols)
df2['a'] = df2['FLIGHT'].str[:2]
df2['b'] = df2['FLIGHT'].str[2:].str.zfill(4)
df2["UPLOAD_TIME"] = datetime.now()
...
...