Python csv列无筛选,无错误

Python csv列无筛选,无错误,python,pandas,indexing,conditional-statements,Python,Pandas,Indexing,Conditional Statements,文件: 根据我的代码和输入文件,它应该输出所有具有列deliver\u quaty的行,但当我运行代码时,文件中没有错误和更改 请更正我的密码 SYMBOL,DATE1,PREV_CLOSE,CLOSE_PRICE,DELIV_QTY,DELIV_PER,P/L_PER 20MICRONS,23-Feb-2017,36.55,35.9,41182,76.49,-1.77838577291 3IINFOTECH,23-Feb-2017,5.3,5.25,1240915,60.45,-0.94339

文件:

根据我的代码和输入文件,它应该输出所有具有列
deliver\u quaty
的行,但当我运行代码时,文件中没有错误和更改

请更正我的密码

SYMBOL,DATE1,PREV_CLOSE,CLOSE_PRICE,DELIV_QTY,DELIV_PER,P/L_PER
20MICRONS,23-Feb-2017,36.55,35.9,41182,76.49,-1.77838577291
3IINFOTECH,23-Feb-2017,5.3,5.25,1240915,60.45,-0.943396226415
3MINDIA,23-Feb-2017,11135.85,11038.15,360,69.50,-0.877346587822
63MOONS,23-Feb-2017,80.3,80.6,26958,53.38,0.373599003736
63MOONS,23-Feb-2017,80.3,80.6,26958,53.38,0.373599003736
8KMILES,23-Feb-2017,588.75,586.75,10141,46.50,-0.339702760085
A2ZINFRA,23-Feb-2017,40.95,40.55,116344,48.67,-0.97680097680

您需要将输出分配给
df
,因为它在本地不起作用:

import pandas as pd
df = pd.read csv('bhavcopy.csir', index_col = False) 
df[df.DELIV QTY >= 10000 ]
df.to csv('bhavcopy.csir', index = False)
另一个解决方案包括:


小建议-嗨,耶兹雷尔,谢谢你的快速评论,这是有用的。P/LúPER也是有用的,但当我过滤另一个列时不起作用,如果我搜索字符串,这是有用的。对于ex,“交货时间”栏中的“100.00”。我将您的命令置于>=99,然后没有输出,但当我搜索'deliver\u PER==100.00'时,就会有结果。我必须做什么。可能存在与数据类型相关的问题。如何将所有列值更改为浮点值。您可以通过
df['deliver\u PER']=df['deliver\u PER'].astype(float)
进行转换,如果不起作用,请使用
df['deliver\u PER']=pd.to_numeric(df['deliver\u PER'],errors='concurrence')
将非数值转换为
NaN
非常感谢!!!!!。我对stackoverflow也这么做。我将非数值“-”替换为0(零)。很快回答……真的很快。
df = df[df.DELIV_QTY >= 10000]
print (df)
       SYMBOL        DATE1  PREV_CLOSE  CLOSE_PRICE  DELIV_QTY  DELIV_PER  \
0   20MICRONS  23-Feb-2017       36.55        35.90      41182      76.49   
1  3IINFOTECH  23-Feb-2017        5.30         5.25    1240915      60.45   
3     63MOONS  23-Feb-2017       80.30        80.60      26958      53.38   
4     63MOONS  23-Feb-2017       80.30        80.60      26958      53.38   
5     8KMILES  23-Feb-2017      588.75       586.75      10141      46.50   
6    A2ZINFRA  23-Feb-2017       40.95        40.55     116344      48.67   

    P/L_PER  
0 -1.778386  
1 -0.943396  
3  0.373599  
4  0.373599  
5 -0.339703  
6 -0.976801  
df = df.query('DELIV_QTY >= 10000')
print (df)
       SYMBOL        DATE1  PREV_CLOSE  CLOSE_PRICE  DELIV_QTY  DELIV_PER  \
0   20MICRONS  23-Feb-2017       36.55        35.90      41182      76.49   
1  3IINFOTECH  23-Feb-2017        5.30         5.25    1240915      60.45   
3     63MOONS  23-Feb-2017       80.30        80.60      26958      53.38   
4     63MOONS  23-Feb-2017       80.30        80.60      26958      53.38   
5     8KMILES  23-Feb-2017      588.75       586.75      10141      46.50   
6    A2ZINFRA  23-Feb-2017       40.95        40.55     116344      48.67   

    P/L_PER  
0 -1.778386  
1 -0.943396  
3  0.373599  
4  0.373599  
5 -0.339703  
6 -0.976801