如何用python来改这列值。将小于30的设为0,大于30的设为1,谢谢各位大神

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python来改这列值。将小于30的设为0,大于30的设为1,谢谢各位大神相关的知识,希望对你有一定的参考价值。

22
26
26
28
22
26
27
32
28
27
36
33
23
20
29
25
25
20
37
24
26
33
25
27
20
18
18
30
32
26
25
40
32
27
26
28
33
31
31
26
27
19
36
22
36
28
26
32
26
29
33
21
30
35
29
25
32
21
26
30
22
19
32
32
31
35
28
29
25
27
17
29
28
32
38
27
33
29
25
24
将小于30的设为0,大于30的设为1

参考技术A

lst='''22

26

26

28

22

26

27

32

28

27

36

33

23

20

29

25

25

20

37

24

26

33

25

27

20

18

18

30

32

26

25

40

32

27

26

28

33

31

31

26

27

19

36

22

36

28

26

32

26

29

33

21

30

35

29

25

32

21

26

30

22

19

32

32

31

35

28

29

25

27

17

29

28

32

38

27

33

29

25

24'''.split()

print([1 if eval(x)>=30 else 0 for x in lst])

追问

大神 能让它输出依旧是保持一列么,萌新小白弱弱提一要求

如何用第二列值替换星号

【中文标题】如何用第二列值替换星号【英文标题】:How to replace asterisk with second column value 【发布时间】:2018-08-21 03:53:26 【问题描述】:

1) 我们可以在sql的select语句中使用if条件吗 2)在存储过程中,我需要满足以下条件 a)我有来自不同表的两列需要合并,如果第 1 列中存在特殊字符,星号应替换为第二列值 b) 如果没有星号则正常合​​并列

Column 1
---------
UAT 
ST*
UAT*S
UT

Column 2
---------
12
10
9
6

我想要结果

UAT12
ST10
UAT9s
UT6

【问题讨论】:

现身,你试过了。 【参考方案1】:

这会起作用:

1) 使用IF:

SELECT 
IF(column1 LIKE '%*%', REPLACE(column1, '*', column2), CONCAT(column1, column2))
FROM tableName

2) 使用CASE

SELECT 
CASE WHEN column1 LIKE '%*%' 
    THEN REPLACE(column1, '*', column2)
    ELSE CONCAT(column1, column2)
END 
FROM tableName

【讨论】:

感谢您的回复先生,只是想知道如果两列来自不同的表怎么办,所以我们不能使用 from tablename.. 但是如何将列修改为 **.Column 如果没有关系,JOIN 将无济于事 而且 iif 不是 MySQL 构造

以上是关于如何用python来改这列值。将小于30的设为0,大于30的设为1,谢谢各位大神的主要内容,如果未能解决你的问题,请参考以下文章

GitHub标星2000+,如何用30天啃完TensorFlow2.0?

如何用另一个表的列值更新一个表的列值? [复制]

[题解]luogu_P1627_中位数(排列乱搞

如何用第二列值替换星号

如何用熊猫数据框中的范围替换列值

Python中如何用turtle库画出小猪佩奇社会人