我觉得这个问题以前一定是有人回答的,但是我找不到堆栈溢出的答案!
我的数据框result
看起来像这样,我想删除小于或等于 10
>>> result
Name Value Date
189 Sall 19.0 11/14/15
191 Sam 10.0 11/14/15
192 Richard 21.0 11/14/15
193 Ingrid 4.0 11/14/15
此命令可以使用并删除所有10:
的值df2 = result[result['Value'] != 10]
但是当我尝试添加< =限定符时,我收到错误消息SyntaxError: invalid syntax
df3 = result[result['Value'] ! <= 10]
我觉得可能有一个非常简单的解决方案。提前谢谢!
答案 0 :(得分:18)
而不是这个
<div class="container body-content" >
< form name="mainForm" class="form-horizontal" method="post" >
< div class="row" >
< div class="col-sm-2"><label>Main Category : </label></div >
< div class="col-sm-6"><input spellcheck="true" ng-disabled="editVM.FirstLevel.ID > 0" type="text" style="font-size:15px; width:100%;" class="form-control" id="Main_Cat" ng-model="editVM.FirstLevel.Name">< /div>
< div class="col-sm-4"></div >
< /div>
使用
df3 = result[result['Value'] ! <= 10]
它会起作用。 或者只是使用
df3 = result[~(result['Value'] <= 10)]
答案 1 :(得分:6)
python不使用!
来否定。它使用not
。 See this answer
在此特定示例中,!=
是两个字符的字符串,表示not equal
。这不是对==
的否定。
选项1
这应该有效,除非你有NaN
result[result['Value'] > 10]
选项2
使用一元运算符~
来否定一个布尔系列
result[~(result['Value'] <= 10)]
答案 2 :(得分:2)
我还有另一个建议,可以帮忙
function getUsers(sheet, page, limit, search){
var rows = sheet.getDataRange().getValues().slice(1).filter(([,,c]) => c == search).reverse();
var dataArray = rows.splice(limit * (page - 1), limit).reduce((ar, [a, b, c, d]) => ar.concat({id: a, year: b, title: c, img: d}), []);
var jo = {};
jo.user = dataArray;
var result = JSON.stringify(jo);
return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType.JSON);
}