查找熊猫dataFrame(Looking up Pandas dataFrame)
python
我通过阅读文本文件创建了一个数据框。 我很想知道某个列中是否存在少量值,如果他们这样做,我想打印整行。
这是我的输入文件(analyte_map.txt):
Analyte_id mass Intensity A34579 101.2 786788 B12345 99.2 878787 B943470 103.89 986443 C12345 11.2 101这是我的代码:
import pandas as pd map_file="analyte_map.txt" array=['A34579','B943470','D583730'] analyte_df=pd.read_table(map_file,sep="\t") for value in array: if analyte_df.lookup([value],['Analyte_id']): print '%s\t%s'%(analyte_df['mass'],analyte_df['Intensity'])I have created a data frame by reading a text file. I am interested in knowing if few values exist in a particular column and if they do, I want to print the entire row.
This is my input file(analyte_map.txt):
Analyte_id mass Intensity A34579 101.2 786788 B12345 99.2 878787 B943470 103.89 986443 C12345 11.2 101This is my code:
import pandas as pd map_file="analyte_map.txt" array=['A34579','B943470','D583730'] analyte_df=pd.read_table(map_file,sep="\t") for value in array: if analyte_df.lookup([value],['Analyte_id']): print '%s\t%s'%(analyte_df['mass'],analyte_df['Intensity'])最满意答案
您可以使用isin使用boolean indexing :
array=['A34579','B943470','D583730'] print (df[df.analyte_id.isin(array)]) analyte_id mass Intensity 0 A34579 101.20 786788 2 B943470 103.89 986443另外如果只需要一些列使用ix :
array=['A34579','B943470','D583730'] print (df.ix[df.analyte_id.isin(array), ['mass','Intensity']]) mass Intensity 0 101.20 786788 2 103.89 986443You can use boolean indexing with isin:
array=['A34579','B943470','D583730'] print (df[df.analyte_id.isin(array)]) analyte_id mass Intensity 0 A34579 101.20 786788 2 B943470 103.89 986443Also if need only some columns use ix:
array=['A34579','B943470','D583730'] print (df.ix[df.analyte_id.isin(array), ['mass','Intensity']]) mass Intensity 0 101.20 786788 2 103.89 986443更多推荐
发布评论