你如何用完全不分开的单词来分隔一列。从 pd.read_table 加载的数据?
How do you separate a column with words not separated at all. The data loaded from pd.read_table?
所以我从pd.read_table上传了一个数据:
df = pd.read_table('Test_Data.txt', delim_whitespace=True, names=('A', 'B'))
数据为:
A B
0 AAABBABAABBAAABBBBAABBBABAAABAAAAABBBABBBAAABB... True
1 AABAABABBBABAAAAABAAABBAABAABBABABBAAABABBBBAB... True
2 BAAABBBBABABABBBABBAAABAAAAAAABBBBAABABABBBAAB... True
3 BAABBABBABBAAAABABBBAAAAAAAABAAABBAAAABBAABBAA... True
4 ABBABBBABBAABAABABBAAABAAAAABABABAABBAABBBAABA... True
A 列是 100 个字母。我想将每个拆分成单独的列。我想要 100 列这些字母表和 B 列。我该怎么做?
谢谢!
您可以使用固定宽度的文本到列的转换选项。
数据 > 文本到列 >
Excel 将让您将指针放在要应用分隔的位置。
# for example
df = pd.DataFrame({"A": ["ABB"]*5, "B": [True]*5})
print(df)
A B
0 ABB True
1 ABB True
2 ABB True
3 ABB True
4 ABB True
# split string
df["A"] = df["A"].apply(list)
print(df)
A B
0 [A, B, B] True
1 [A, B, B] True
2 [A, B, B] True
3 [A, B, B] True
4 [A, B, B] True
# new columns' names, here is 3, you could set 100
col_names = list(range(3))
df = pd.concat([df['A'].apply(pd.Series, index=col_names), df["B"]], axis=1)
print(df)
0 1 2 B
0 A B B True
1 A B B True
2 A B B True
3 A B B True
4 A B B True
所以我从pd.read_table上传了一个数据:
df = pd.read_table('Test_Data.txt', delim_whitespace=True, names=('A', 'B'))
数据为:
A B
0 AAABBABAABBAAABBBBAABBBABAAABAAAAABBBABBBAAABB... True
1 AABAABABBBABAAAAABAAABBAABAABBABABBAAABABBBBAB... True
2 BAAABBBBABABABBBABBAAABAAAAAAABBBBAABABABBBAAB... True
3 BAABBABBABBAAAABABBBAAAAAAAABAAABBAAAABBAABBAA... True
4 ABBABBBABBAABAABABBAAABAAAAABABABAABBAABBBAABA... True
A 列是 100 个字母。我想将每个拆分成单独的列。我想要 100 列这些字母表和 B 列。我该怎么做?
谢谢!
您可以使用固定宽度的文本到列的转换选项。
数据 > 文本到列 >
Excel 将让您将指针放在要应用分隔的位置。
# for example
df = pd.DataFrame({"A": ["ABB"]*5, "B": [True]*5})
print(df)
A B
0 ABB True
1 ABB True
2 ABB True
3 ABB True
4 ABB True
# split string
df["A"] = df["A"].apply(list)
print(df)
A B
0 [A, B, B] True
1 [A, B, B] True
2 [A, B, B] True
3 [A, B, B] True
4 [A, B, B] True
# new columns' names, here is 3, you could set 100
col_names = list(range(3))
df = pd.concat([df['A'].apply(pd.Series, index=col_names), df["B"]], axis=1)
print(df)
0 1 2 B
0 A B B True
1 A B B True
2 A B B True
3 A B B True
4 A B B True