我有一个只有两列的系列。(例如:(阿拉巴马州,阿拉巴马州)错误)
0
Alabama Alabama False
Alabama Alaska False
Alabama Arizona False
Alabama Arkansas True
Alabama California True
Alabama Colorado True
Run Code Online (Sandbox Code Playgroud)
我想从该系列中删除所有 False 值。我试过:
p = test2[test2['Alabama','Alabama'] == True]
Run Code Online (Sandbox Code Playgroud)
它适用于数据框,但似乎不适用于系列。
我一直用一些代码帮助一个新的Python用户,他问我为什么python解释器在实际错误之后会在行上显示一些语法错误.请考虑以下代码:
x = [1, 2, 3
print x
Run Code Online (Sandbox Code Playgroud)
将显示该行的语法错误print x
,尽管错误确实在前一行.
这可能是非常令人困惑(并且浪费时间)第一次遇到它,这是一个非常常见的问题(在您最喜欢的搜索引擎上搜索"python语法错误"),似乎并不难纠正......为什么还没有修好?目前的方法有一些好处吗?
解决方案是使用replace()两次:
import pandas as pd
s = pd.Series([True, False, False])
s = s.replace(False, "A")
s = s.replace(True, 'B')
Run Code Online (Sandbox Code Playgroud)
然后,
Out[1]:
0 B
1 A
2 A
Run Code Online (Sandbox Code Playgroud)
是否有更优雅的方式来实现这一目标?
我将使用逻辑回归来预测电影的票房.我得到了一些火车数据,包括演员和导演.这是我的数据:
Director1|Actor1|300 million
Director2|Actor2|500 million
Run Code Online (Sandbox Code Playgroud)
我将使用整数对导演和演员进行编码.
1|1|300 million
2|2|300 million
Run Code Online (Sandbox Code Playgroud)
这意味着X={[1,1],[2,2]} y=[300,500]
和fit(X,y)
运作的?
我有两个清单:
a = ['a', 'b', 'c', 'd']
b = ['e', 'f', 'g', 'h']
Run Code Online (Sandbox Code Playgroud)
我想合并到一个包含元素nr的列表.列表a中的第1个作为第一个元素,列表b的元素nr.1作为第二个元素,元素nr.列表中的2个作为第三个元素,依此类推,如下所示:
c = ['a', 'e', 'b', 'f', 'c', 'g', 'd', 'h']
Run Code Online (Sandbox Code Playgroud)
最简单的方法是什么,可能不使用循环?
我试图从2d数组交换两列,这样
a = array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
Run Code Online (Sandbox Code Playgroud)
变为:
b = array([[1, 3, 2],
[4, 6, 5],
[7, 9, 8]])
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我正在编写一个脚本,用户输入多个字符,我想将每个字符放入自己的列表然后进行操作.
input = AVI
Run Code Online (Sandbox Code Playgroud)
输出:
A = ['A'] V = ['V'] I = ['I']
Run Code Online (Sandbox Code Playgroud)
我能够把它变成这样的单个列表:['A','V','I']但是这对于我以后要做的事情来说太混乱了.
我有一个文件名列表,每个文件名都以一个前导号码开头:
10_file
11_file
1_file
20_file
21_file
2_file ...
Run Code Online (Sandbox Code Playgroud)
我需要按顺序排列:
1_file
10_file
11_file
2_file
21_file
22_file ...
Run Code Online (Sandbox Code Playgroud)
如果它们只是数字作为字符串('1')而没有下划线,我可以使用sorted()对它们进行排序.我已尝试使用不同的键属性的不同排序方法,也模块"natsort",但没有结果.我必须为此编写自己的算法吗?也许我可以提取前导数字并用它们进行排序?
更新所需列表以更正列表
我读通过教程的一个基于Python的交易平台,它是推荐使用按位的(~
,&
,|
),而不是布尔(not
,and
,or
)运营商合并布尔表达式.
类似因素,可以组合过滤器.使用
&
(和)和|
(或)运算符组合过滤器.
有这么好的理由吗?我以前从未见过它.我并不完全确定Python中布尔值的所有属性,但我确实认为在C和C++中,布尔值由整数1或0表示,并且可以这样操作.Python类似吗?在这种情况下,我可以看到一个&
和|
至少是如何工作的.
使用这些按位运算符而不是布尔值的目的是什么?它更快吗?