Select 一些列基于数据框中的 WHERE
Select some columns based on WHERE in a dataframe
因此,我正在使用 Blaze 并希望在数据帧上执行此查询:
SELECT col1,col2 FROM table WHERE col1 > 0
对于 SELECT *
,这有效:d[d.col1 > 0]
。但我只想要 col1
和 col2
而不是所有列。我该怎么办?
提前致谢!
编辑:我在这里创建 d
为:d = Data('postgresql://uri')
我认为您可以使用第一个子集,然后使用布尔索引:
print (d)
col1 col2 col3
0 -1 4 7
1 2 5 8
2 3 6 9
d = d[['col1','col2']]
print (d)
col1 col2
0 -1 4
1 2 5
2 3 6
print (d[d.col1 > 0])
col1 col2
1 2 5
2 3 6
这等同于:
print (d[['col1','col2']][d.col1 > 0])
col1 col2
1 2 5
2 3 6
这也有效:d[d.col1 > 0][['col1','col2']]
因此,我正在使用 Blaze 并希望在数据帧上执行此查询:
SELECT col1,col2 FROM table WHERE col1 > 0
对于 SELECT *
,这有效:d[d.col1 > 0]
。但我只想要 col1
和 col2
而不是所有列。我该怎么办?
提前致谢!
编辑:我在这里创建 d
为:d = Data('postgresql://uri')
我认为您可以使用第一个子集,然后使用布尔索引:
print (d)
col1 col2 col3
0 -1 4 7
1 2 5 8
2 3 6 9
d = d[['col1','col2']]
print (d)
col1 col2
0 -1 4
1 2 5
2 3 6
print (d[d.col1 > 0])
col1 col2
1 2 5
2 3 6
这等同于:
print (d[['col1','col2']][d.col1 > 0])
col1 col2
1 2 5
2 3 6
这也有效:d[d.col1 > 0][['col1','col2']]