【发布时间】:2021-04-12 13:11:34
【问题描述】:
【问题讨论】:
【问题讨论】:
假设您的df 是这样的:
0 1 2
0 read pass 1000K times. read pass 2000K times. read pass 3000K times.
1 MAX BER WL layer 0 == 11 MAX BER WL layer 0 == 18 MAX BER WL layer 0 == 18
2 MAX BER WL layer 1 == 5 MAX BER WL layer 1 == 15 MAX BER WL layer 0 == 15
您可以在每一列上使用.str.split(expand=True),并在结果上使用concat():
out = pd.concat([df[column].str.split(expand=True) for column in df.columns], axis=1)
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 0 | 1 | 2 | ... | 4 | 5 | 6 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | read | pass | 1000K | times. | None | None | None | read | pass | 2000K | ... | None | None | None | read | pass | 3000K | times. | None | None | None |
| 1 | MAX | BER | WL | layer | 0 | == | 11 | MAX | BER | WL | ... | 0 | == | 18 | MAX | BER | WL | layer | 0 | == | 18 |
| 2 | MAX | BER | WL | layer | 1 | == | 5 | MAX | BER | WL | ... | 1 | == | 15 | MAX | BER | WL | layer | 0 | == | 15 |
示例df供参考:
csv = '''
read pass 1000K times.,read pass 2000K times.,read pass 3000K times.
MAX BER WL layer 0 == 11,MAX BER WL layer 0 == 18,MAX BER WL layer 0 == 18
MAX BER WL layer 1 == 5,MAX BER WL layer 1 == 15,MAX BER WL layer 0 == 15
'''
df = pd.read_csv(StringIO(csv), header=None)
【讨论】: