标签: conditional

根据if-elif-else条件创建新列

我有一个DataFrame df:

    A    B
a   2    2 
b   3    1
c   1    3
Run Code Online (Sandbox Code Playgroud)

我想根据以下标准创建一个新列:

如果排 A == B: 0

如果排A > B: 1

如果排 A < B: -1

所以鉴于上表,它应该是:

    A    B    C
a   2    2    0
b   3    1    1
c   1    3   -1 
Run Code Online (Sandbox Code Playgroud)

对于if else我这样做的典型情况np.where(df.A > df.B, 1, -1),pandas是否提供了一个特殊的语法来一步解决我的问题(无需创建3个新列然后组合结果)?

python conditional pandas

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

Python中的条件语句

有没有办法用with语句开始一段代码,但是有条件地?

就像是:

if needs_with():
    with get_stuff() as gs:

# do nearly the same large block of stuff,
# involving gs or not, depending on needs_with()
Run Code Online (Sandbox Code Playgroud)

为了澄清,一种情况会在with语句中包含一个块,而另一种情况可能是同一个块,但不包含(即,好像它没有缩进)

最初的实验当然会给出压痕错误..

python conditional indentation with-statement conditional-statements

55
推荐指数
5
解决办法
1万
查看次数

为什么Java编译器不能理解这个变量总是被初始化?

class Foo{
    public static void main(String args[]){
        final int x=101;

        int y;
        if(x>100){
            y=-1;
        }
        System.out.println(y);
    }
}
Run Code Online (Sandbox Code Playgroud)

Java编译器理解if语句的条件始终为true,因此将始终初始化y.没有编译错误,如预期的那样.

class Bar{
    public static void main(String args[]){
        final int x;
        x=101;

        int y;      
        if(x>100){
            y=-1;
        }
        System.out.println(y);
    }
}
Run Code Online (Sandbox Code Playgroud)

但是当我将x的声明和初始化分成两行时,编译器似乎并不认为条件总是为真,并且y将始终被初始化.

final int x;
x=101;
byte b;
b=x;
System.out.println(b);
Run Code Online (Sandbox Code Playgroud)

这里发生了同样的事情,编译器会丢失精度错误.

final int x=101;
byte b;
b=x;
System.out.println(b);
Run Code Online (Sandbox Code Playgroud)

同样,编译器可以理解x在b的范围内.

java conditional final initialization

54
推荐指数
3
解决办法
3065
查看次数

项目参考条件包含多个条件

这是我的csproj文件的片段:

<ProjectReference Include="..\program_data\program_data.csproj" Condition="'$(Configuration)'=='Debug'">
      <Project>{4F9034E0-B8E3-448E-8794-CF9B9A5E7D46}</Project>
      <Name>program_data</Name>
</ProjectReference>
Run Code Online (Sandbox Code Playgroud)

我想要做的是包括program_data.dll用于多个生成配置,例如发布和调试.

我尝试过以下操作

Condition="'$(Configuration)'=='Debug' || '$(Configuration)'=='Release'"
Run Code Online (Sandbox Code Playgroud)

但Visual Studio对此嗤之以鼻.

有没有办法可以做到这一点,或者我必须<ProjectReference>为每个构建配置分别?

c# conditional csproj include buildconfiguration

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

条件JOIN语句SQL Server

是否可以执行以下操作:

IF [a] = 1234 THEN JOIN ON TableA 
ELSE JOIN ON TableB
Run Code Online (Sandbox Code Playgroud)

如果是这样,那么正确的语法是什么?

sql-server conditional join case

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

如何在Ruby中编写复杂的多行if条件?

如何在Ruby中编写这个多行,复杂的if语句?

  if ( (aa != nil && self.prop1 == aa.decrypt)   
      || (bb != nil && self.prop2 == bb.decrypt)  
    ) && (self.id.nil? || self.id != id) 
    return true
  end
Run Code Online (Sandbox Code Playgroud)

我到了Syntax error; unexpected tOROP.

在Java中,我可以写

if (
     ( (aa != null && aa.prop1.equals(aa.decrypt()))
     || (bb != null && bb.prop2.equals(bb.decrypt()))
     )
     && (this.id != id)
   ) {

   return true;
}
Run Code Online (Sandbox Code Playgroud)

ruby conditional if-statement conditional-statements

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

C#和ASP.NET MVC:在视图中使用#if指令

我有一个名为"RELEASE"的条件编译符号,我在Visual Studio的项目属性中指出了这个符号.我想在定义RELEASE符号时将一些特定的CSS应用于元素,并且我试图从视图中执行此操作,但它似乎不起作用.

我的视图代码看起来像这样(为了演示目的缩短了一点):

<% #if (RELEASE) %>
    <div class="releaseBanner">Banner text here</div>
<% #else %>
    <div class="debugBanner">Banner text here</div>
<% #endif %>
Run Code Online (Sandbox Code Playgroud)

使用此代码,并使用RELEASE符号集,'else'代码正在运行,我正在使用debugBanner类获取div.所以似乎并不认为RELEASE是定义的.值得注意的是,我在.cs文件中的实际C#代码正在识别RELEASE并运行正确的代码.这只是给我这个问题的观点.

有没有人对此有任何见解?任何帮助,将不胜感激.谢谢.

澄清:我应该已经提到过这个视图已经是局部视图了,我只是在需要它的页面中进行渲染.那是因为这些横幅将出现在某些页面而不是其他页面上.因此,即使通过以下方式将其渲染为局部视图:

Html.RenderPartial("BannerView");

它不起作用.

c# asp.net-mvc conditional debug-symbols

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

如何将2个select语句组合成一个?

在SQL语法方面,我是一个菜鸟.

我当然有一个包含大量行和列的表:P让我们说它看起来像这样:

      AAA BBB CCC DDD
-----------------------
Row1 | 1   A   D   X
Row2 | 2   B   C   X
Row3 | 3   C   D   Z
Run Code Online (Sandbox Code Playgroud)

现在我想创建一个高级select语句,它给我这个组合(伪SQLish在这里):

select 'Test1', * from TABLE Where CCC='D' AND DDD='X'
select 'Test2', * from TABLE Where CCC<>'D' AND DDD='X'
Run Code Online (Sandbox Code Playgroud)

输出将是:

Test1, 1, A, D, X
Test2, 2, B, C, X
Run Code Online (Sandbox Code Playgroud)

我如何将这两个select语句组合成一个漂亮的select语句?

如果我像下面那样复杂化SQL(因为我自己的SQL语句包含一个exists语句),它会工作吗?我只是想知道如何组合选择,然后尝试将它应用于我更高级的SQL.

select 'Test1', * from TABLE Where CCC='D' AND DDD='X' AND exists(select ...)
select 'Test2', * from TABLE Where CCC<>'D' AND DDD='X' AND exists(select …
Run Code Online (Sandbox Code Playgroud)

sql select conditional

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

Python条件赋值运算符

是否存在Python等效于Ruby ||=运算符("如果变量未设置则设置变量")?

Ruby中的示例:

 variable_not_set ||= 'bla bla'
 variable_not_set == 'bla bla'

 variable_set = 'pi pi'
 variable_set ||= 'bla bla'
 variable_set == 'pi pi'
Run Code Online (Sandbox Code Playgroud)

python variables conditional

45
推荐指数
5
解决办法
8万
查看次数

44
推荐指数
5
解决办法
1万
查看次数