将 Pandas 数据帧行中的字符串处理为逗号分隔的字符
Process string in Pandas Dataframe rows to comma-delimitered chars
我有一个数据框,每一行都有数据。
MKEYGEDLK
如何处理每行中的序列字符串,以便格式如此?
[M, K, E, Y, G, E, D, L, K]
我试过了
get_seq_str = ','.join(test_df.loc[0]['seq_1'])
arr.append(get_seq_str)
但是,当我将它附加到数据框时,每个字符串的开头和结尾都有一个单引号,这是我不想要的。
['M, K, E, Y, G, E, D, L, K']
如何去除单引号?
IIUC,你可以尝试apply
list
字符串值
df['col_list'] = df['col'].apply(list)
print(df)
col col_list
0 MKEYGEDLK [M, K, E, Y, G, E, D, L, K]
你可以试试这个。
get_seq_str = [*test_df.loc[0]['seq_1']]
您可以使用 str.findall
:
df['new'] = df['seq_1'].str.findall(r'[a-zA-Z]')
示例:
seq_1 new
0 MKEYGEDLK [M, K, E, Y, G, E, D, L, K]
1 ?MKEY GEDLK [M, K, E, Y, G, E, D, L, K]
我有一个数据框,每一行都有数据。
MKEYGEDLK
如何处理每行中的序列字符串,以便格式如此?
[M, K, E, Y, G, E, D, L, K]
我试过了
get_seq_str = ','.join(test_df.loc[0]['seq_1'])
arr.append(get_seq_str)
但是,当我将它附加到数据框时,每个字符串的开头和结尾都有一个单引号,这是我不想要的。
['M, K, E, Y, G, E, D, L, K']
如何去除单引号?
IIUC,你可以尝试apply
list
字符串值
df['col_list'] = df['col'].apply(list)
print(df)
col col_list
0 MKEYGEDLK [M, K, E, Y, G, E, D, L, K]
你可以试试这个。
get_seq_str = [*test_df.loc[0]['seq_1']]
您可以使用 str.findall
:
df['new'] = df['seq_1'].str.findall(r'[a-zA-Z]')
示例:
seq_1 new
0 MKEYGEDLK [M, K, E, Y, G, E, D, L, K]
1 ?MKEY GEDLK [M, K, E, Y, G, E, D, L, K]