根据条件选择Pandas DataFrame行

时间:2017-07-17 18:13:26

标签: python sql pandas

我是Python的新手并且掌握了Pandas。我正在尝试执行简单的导入CSV,过滤,写入CSV,但与我的Access查询相比,过滤器似乎无法丢弃数据行。

我通过以下命令导入:

Costs1516 = pd.read_csv('C:......../1b Data MFF adjusted.csv')

导入后,我得到一个数据警告:服务代码列包含多种类型的数据(有些是数字代码,其他类型纯文本)但导入似乎属性数据类型Object我认为它们只是将它们视为字符串和一切都会好的....

我希望输出数据帧与导入的数据(Costs1516)具有相同的结构,但只包含'Service Code'='110'的行。

我从Access中提取了以下SQL,这似乎做得很好,并返回136k行:

SELECT [1b Data MFF adjusted].*, [1b Data MFF adjusted].``[Service code]
FROM [1b Data MFF adjusted]
WHERE ((([1b Data MFF adjusted].[Service code])="110"));

我的熊猫等效于以下但只返回99k记录:

Costs1516Ortho = Costs1516.loc[Costs1516['Service code'] == '110']

我比较了两个输出,我看不出为什么大熊猫排除某些线条并包括其他线路的任何原因......我真的被卡住了...任何建议的区域或者接受测试的方法感激不尽。

0 个答案:

没有答案