标签: multiple-conditions

在dplyr中的字符串列上过滤多个值

data.frame在其中一列中有一个字符数据.我想data.frame在同一列中过滤多个选项.有没有一种简单的方法可以做到这一点,我错过了?

示例: data.frame name =dat

days      name
88        Lynn
11          Tom
2           Chris
5           Lisa
22        Kyla
1          Tom
222      Lynn
2         Lynn
Run Code Online (Sandbox Code Playgroud)

我想过滤一下Tom,Lynn例如.
当我做:

target <- c("Tom", "Lynn")
filt <- filter(dat, name == target)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

longer object length is not a multiple of shorter object length
Run Code Online (Sandbox Code Playgroud)

r string-matching multiple-conditions dplyr

63
推荐指数
3
解决办法
17万
查看次数

LINQ以多种条件加入C#

我在C#中有一个LINQ Joining语句,有多个条件.

var possibleSegments = 
    from epl in eventPotentialLegs
    join sd in segmentDurations on 
        new { 
            epl.ITARequestID, 
            epl.ITASliceNumber, 
            epl.DepartAirportAfter, 
            epl.AirportId_Origin, 
            epl.AirportId_Destination 
        } 
        equals 
        new { 
            sd.ITARequestId, 
            sd.SliceIndex, 
            sd.OriginAirport, 
            sd.DestinationAirport 
        }
    where
        epl.DepartAirportAfter > sd.UTCDepartureTime 
        and 
        epl.ArriveAirportBy > sd.UTCArrivalTime
    select new PossibleSegments{ ArrivalTime = sd.arrivalTime };
Run Code Online (Sandbox Code Playgroud)

加入无法正常工作.我究竟做错了什么?

c# linq join multiple-conditions

54
推荐指数
2
解决办法
9万
查看次数

Scala过滤器有两种情况

我想一次过滤两个条件下的数据集.

可能吗?

我想要这样的东西:

mystuff = mystuff.filter(_.isX && _.name == "xyz")
Run Code Online (Sandbox Code Playgroud)

arrays scala filter multiple-conditions

43
推荐指数
3
解决办法
3万
查看次数

什么是更好的 ?多个if语句,如果有多个条件,则为一个

对于我的工作,我必须开发一个小型Java应用程序来解析非常大的XML文件(~300k行)以选择非常具体的数据(使用Pattern),所以我试图对它进行一些优化.我想知道这两个片段之间哪个更好:

if (boolean_condition && matcher.find(string)) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

要么

if (boolean_condition) {
    if (matcher.find(string)) {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

更精确:

  • 这些if语句在循环内的每次迭代中执行(~20k次迭代)
  • boolean_conditionboolean使用外部函数在每次迭代时计算的
  • 如果boolean设置为false,我不需要测试匹配的正则表达式

谢谢你的帮助

java optimization if-statement multiple-conditions

39
推荐指数
3
解决办法
7万
查看次数

XPATH多元素过滤器

我有以下示例XML结构:

<SavingAccounts>
    <SavingAccount>
       <ServiceOnline>yes</ServiceOnline>
       <ServiceViaPhone>no</ServiceViaPhone>
    </SavingAccount>
    <SavingAccount>
       <ServiceOnline>no</ServiceOnline>
       <ServiceViaPhone>yes</ServiceViaPhone>
    </SavingAccount>
</SavingAccounts>
Run Code Online (Sandbox Code Playgroud)

我需要做的是使用XPATH过滤'SavingAccount'节点,其中'ServiceOnline'的值为'yes'或'ServiceViaPhone'的值为yes.

XPATH应该给我两行!! 我可以过滤'SavingAccount'节点,其中两个元素值都是,如下面的XPATH示例,但我想要做的是一个或元素值比较???

/SavingAccounts/SavingAccount/ServiceOnline[text()='yes']/../ServiceViaPhone[text()='yes']/..
Run Code Online (Sandbox Code Playgroud)

xpath multiple-conditions

21
推荐指数
2
解决办法
6万
查看次数

Python中的多个“或”条件

我有一个小代码问题,它适用于IDLE而不适用于Eclipse,我可以这样写吗:

if  fields[9] != ('A' or 'D' or 'E' or 'N' or 'R'):
Run Code Online (Sandbox Code Playgroud)

代替这个:

if  fields[9] != 'A' and fields[9] != 'D' and fields[9] != 'E' and fields[9] != 'N' and fields[9] != 'R':
Run Code Online (Sandbox Code Playgroud)

谢谢。

python multiple-conditions conditional-statements

18
推荐指数
2
解决办法
7万
查看次数

C++:for循环中的多个退出条件(多个变量):AND -ed或OR -ed?

对于循环和多个变量和条件.

我使用for循环来设置源和目标索引来复制数组中的项目.

for(int src = 0, dst = 8;
    src < 8, dst >= 0;
    src ++, dst --)
{
    arr2[dst] = arr1[src];
}
Run Code Online (Sandbox Code Playgroud)

无论如何都是这样的.

(和)|| (||)

我的问题是退出条件.这里有两个.src < 8dst >= 0.这些条件是AND-ed(&&)还是OR-ed(||).

为了进一步解释,条件评估如下:

(src < 8) && (dst >= 0)
Run Code Online (Sandbox Code Playgroud)

或者他们是这样评价的?

(src < 8) || (dst >= 0)
Run Code Online (Sandbox Code Playgroud)

或者它是完全不同的东西?我认为合乎逻辑的做法是评估我在上面指定的两种方式中的一种,而不是其他方式.

c++ for-loop multiple-conditions

10
推荐指数
2
解决办法
2万
查看次数

具有嵌套多个条件的WHERE子句

我想检索条件in WHERE子句中的数据.
这是我的表看起来像:

Name   Location    Age
----------------------
AAA     Bhuj       24
BBB     Mumbai     22
CCC     Bhuj       18
DDD     Bhuj       27
EEE     Mumbai     26
Run Code Online (Sandbox Code Playgroud)

我的WHERE条款是:
if location = 'Bhuj' then Age>20 else if location = 'Mumbai' then Age>25

我正在尝试使用此代码来实现此目的:

SELECT * FROM testing
WHERE 
CASE Location WHEN 'Bhuj' THEN Age>20
              WHEN 'Mumbai' THEN Age>25
END;
Run Code Online (Sandbox Code Playgroud)

此代码适用于MySQL(请参阅此SQLFiddle),但不适用于SQL Server(请参阅此SQLFiddle)并给出以下错误:

'>'附近的语法不正确:SELECT*FROM测试WHERE case位置当'Bhuj'然后Age> 20当'Mumbai'然后Age> 25 end

有什么建议吗?

sql sql-server case where-clause multiple-conditions

9
推荐指数
2
解决办法
3万
查看次数

pandas:按多种条件过滤组?

我有一个如下所示的数据框:

df = pd.DataFrame([
  {'id': 123, 'date': '2016-01-01', 'is_local': True },
  {'id': 123, 'date': '2017-01-01', 'is_local': False },
  {'id': 124, 'date': '2016-01-01', 'is_local': True },
  {'id': 124, 'date': '2017-01-01', 'is_local': True }
])
df.date = df.date.astype('datetime64[ns]')
Run Code Online (Sandbox Code Playgroud)

我希望获得is_local2016年初所有ID为True 的列表,但2017年初为False.我开始按ID进行分组:

gp = df.groupby('id')
Run Code Online (Sandbox Code Playgroud)

然后我试过这只是为了过滤这些条件中的第二个(作为一种入门方式),但它返回所有组:

gp.apply(lambda x: ~x.is_local & (x.date > '2016-12-31'))
Run Code Online (Sandbox Code Playgroud)

如何以我需要的方式过滤?

python filter multiple-conditions pandas

8
推荐指数
1
解决办法
3041
查看次数

Python'while'有两个条件:“and”或“or”

这是一个非常简单的掷骰子程序,它不断掷两个骰子,直到得到双 6。所以我的 while 语句结构如下:

while DieOne != 6 and DieTwo != 6:
Run Code Online (Sandbox Code Playgroud)

出于某种原因,该计划在DieOne获得 6 分后立即结束。DieTwo根本不考虑。

但是如果我将 while 语句中的theand改为 an or,程序就可以完美运行。这对我来说没有意义。

import random
print('How many times before double 6s?')
num=0
DieOne = 0
DieTwo = 0

while DieOne != 6 or DieTwo != 6:
    num = num + 1
    DieOne = random.randint(1,6)
    DieTwo = random.randint(1,6)
    print(DieOne)
    print(DieTwo)
    print()
    if (DieOne == 6) and (DieTwo == 6):
        num = str(num)
        print('You got double 6s in …
Run Code Online (Sandbox Code Playgroud)

python boolean while-loop multiple-conditions

8
推荐指数
1
解决办法
4万
查看次数