自动替换和添加Pandas中的数据(使用一些过滤器)

2024-10-03 02:39:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我现在正在学习pandas,我遇到了一个问题,当我想在pandas的数据帧中自动添加一些东西时。 这是我的数据

import pandas 
Data=pandas.read_excel(r'D:\pandas.test.xlsx',sheetname='Sheet1')
print Data

Name    N          P

cd05233-SDR_c   237   41.872792
smart00895-FCD   215   37.985866
pfam00126-HTH_1   206   36.395760
pfam07729-FCD   202   35.689046
pfam00165-HTH_AraC   197   34.805654

我想添加一个新的列“分类” 当名称中的项包含“cd”时,“分类”将更改为“cd”

我这样写命令:

Data[''Classification'']='N'
Data[Data.Name.str.contains('cd')].iat[0,3]='cd'
print Data

数据为:

Name    N          P           classification

cd05233-SDR_c   237   41.872792               N
smart00895-FCD   215   37.985866               N
pfam00126-HTH_1   206   36.395760               N
pfam07729-FCD   202   35.689046               N
pfam00165-HTH_AraC   197   34.805654               N

节目结束后什么都没发生,有人能告诉我怎么做吗


Tags: 数据namepandasdatacdprintsdrfcd
1条回答
网友
1楼 · 发布于 2024-10-03 02:39:54

我想你需要:

Data.loc[Data.Name.str.contains('cd'), 'Classification'] = 'cd'

如果需要cdn

Data['Classification'] = np.where(Data.Name.str.contains('cd'), 'cd', 'n')

相关问题 更多 >