拆分成新的列
Split into new columns
为了将单元格拆分为新的列,我使用了以下代码:
| Column1 | Column2
| a;b;c;d;e;f | 1;2;3;4
df = pd.read_excel('FileName.xlsx')
new = df["Column1"].str.split(";", n=5, expand=True).
df['1st'] = new[0]
df['2nd'] = new[1]
df['3rd'] = new[2]
df['4th'] = new[3]
df['5th'] = new[4]
df['6th'] = new[5]
df.drop(columns=["Column1"], inplace=True)
输出会变成
Column: 1st 2nd 3rd 4th 5th 6th
a b c d e f;
如何取消最后一项的分号
您很可能在问题中打错了字。我敢打赌当你读入数据时 f 后面有一个分号,它看起来像这样:
Column1 Column2
0 a;b;c;d;e;f; 1;2;3;4
和不是这个:
Column1 Column2
0 a;b;c;d;e;f 1;2;3;4
因此,如果您设置 n=6
而不是 n=5
,那么应该删除最后的分号。或者,您可以只删除 n=6
作为参数。复制我在上面的答案中包含的第一个数据框和 运行 下面的代码以及下面的 df = pd.read_clipboard('\s+\s+')
:
import pandas as pd
df = pd.read_clipboard('\s+\s+')
new = df["Column1"].str.split(";", n=6, expand=True)
df['1st'] = new[0]
df['2nd'] = new[1]
df['3rd'] = new[2]
df['4th'] = new[3]
df['5th'] = new[4]
df['6th'] = new[5]
df.drop(columns=["Column1", "Column2"], inplace=True)
df
为了将单元格拆分为新的列,我使用了以下代码:
| Column1 | Column2
| a;b;c;d;e;f | 1;2;3;4
df = pd.read_excel('FileName.xlsx')
new = df["Column1"].str.split(";", n=5, expand=True).
df['1st'] = new[0]
df['2nd'] = new[1]
df['3rd'] = new[2]
df['4th'] = new[3]
df['5th'] = new[4]
df['6th'] = new[5]
df.drop(columns=["Column1"], inplace=True)
输出会变成
Column: 1st 2nd 3rd 4th 5th 6th
a b c d e f;
如何取消最后一项的分号
您很可能在问题中打错了字。我敢打赌当你读入数据时 f 后面有一个分号,它看起来像这样:
Column1 Column2
0 a;b;c;d;e;f; 1;2;3;4
和不是这个:
Column1 Column2
0 a;b;c;d;e;f 1;2;3;4
因此,如果您设置 n=6
而不是 n=5
,那么应该删除最后的分号。或者,您可以只删除 n=6
作为参数。复制我在上面的答案中包含的第一个数据框和 运行 下面的代码以及下面的 df = pd.read_clipboard('\s+\s+')
:
import pandas as pd
df = pd.read_clipboard('\s+\s+')
new = df["Column1"].str.split(";", n=6, expand=True)
df['1st'] = new[0]
df['2nd'] = new[1]
df['3rd'] = new[2]
df['4th'] = new[3]
df['5th'] = new[4]
df['6th'] = new[5]
df.drop(columns=["Column1", "Column2"], inplace=True)
df