我现在正在学习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
我想添加一个新的列'classification'当名称中的项目包含" 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
程序后什么都没发生,有人可以告诉我如何做吗?
我认为您需要:
Data.loc[Data.Name.str.contains('cd'), 'Classification'] = 'cd'
如果需要cd
和n
:
Data['Classification'] = np.where(Data.Name.str.contains('cd'), 'cd', 'n')