小编cs9*_*s95的帖子

无法查看Pandas数据框中的所有列

我试图输出数据框的所有列.

以下是代码:

df_advertiser_activity_part_qa  = df_advertiser_activity_part.loc[(df_advertiser_activity_part['advertiser_id']==209988 )]
df_advertiser_activity_part_qa.sort(columns ='date_each_day_et')

df_advertiser_activity_part_qa
Run Code Online (Sandbox Code Playgroud)

当我输出数据帧时,不会显示所有列.这有21列,在一些列之间只有点"......"我正在使用ipython笔记本.有没有办法可以忽略它.![在此处输入图像描述] [1]

python pandas

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

计算python中两个旋转矩形的交集区域

我有两个2D旋转矩形,定义为(中心x,中心y,高度,宽度)和旋转角度(0-360°).我如何计算这两个旋转矩形的交叉区域.

python

17
推荐指数
2
解决办法
5955
查看次数

python的splat运算符*和**在哪里有效?

拆包/图示运营商***在横跨Python版本(2.7,3.X <3.5和3.x> = 3.5)其适用性广泛不同.

例如:

                                   |   2.7    |   3.1-3.4  |   3.5   
----------------------------------------------------------------------
function(*args)                         ?            ?          ?    

x, *y, z = [1, 2, 3, 4, 5]              x            ?          ?    

{**x, **y}                              x            x          ?    
Run Code Online (Sandbox Code Playgroud)

我错过了各种版本之间是否还有其他差异?我正在浏览PEP和Readmes,但文档并未详细说明.

python function parameter-passing argument-unpacking iterable-unpacking

17
推荐指数
1
解决办法
3513
查看次数

混淆矩阵不支持多标签指示符

multilabel-indicator is not supported 是我尝试运行时收到的错误消息:

confusion_matrix(y_test, predictions)

y_test是一个DataFrame形状:

Horse | Dog | Cat
1       0     0
0       1     0
0       1     0
...     ...   ...
Run Code Online (Sandbox Code Playgroud)

predictions是一个numpy array:

[[1, 0, 0],
 [0, 1, 0],
 [0, 1, 0]]
Run Code Online (Sandbox Code Playgroud)

我已经搜索了一些错误消息,但还没找到我可以应用的东西.任何提示?

python numpy classification scikit-learn

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

在NumPy中将4D阵列重塑为2D阵列的直觉和想法

虽然Kronecker-product出于教学原因(没有使用明显的和容易获得的np.kron()),我获得了一个4维数组作为中间结果,我将重塑以获得最终结果.

但是,我仍然无法围绕重塑这些高维阵列.我有这个4D数组:

array([[[[ 0,  0],
         [ 0,  0]],

        [[ 5, 10],
         [15, 20]]],


       [[[ 6, 12],
         [18, 24]],

        [[ 7, 14],
         [21, 28]]]])
Run Code Online (Sandbox Code Playgroud)

这是形状(2, 2, 2, 2),我想重塑它(4,4).有人可能会认为这很明显

np.reshape(my4darr, (4,4))
Run Code Online (Sandbox Code Playgroud)

但是,上述重塑并没有给我预期的结果,即:

array([[ 0,  5,  0, 10],
       [ 6,  7, 12, 14],
       [ 0, 15,  0, 20],
       [18, 21, 24, 28]])
Run Code Online (Sandbox Code Playgroud)

如您所见,预期结果中的所有元素都存在于4D数组中.我根本不能正确地根据需要进行重塑.除了答案之外,如何reshape为这种高维数组做一些解释将是非常有帮助的.谢谢!

python arrays numpy multidimensional-array reshape

17
推荐指数
2
解决办法
3684
查看次数

你如何概括创建一个包含许多变量和条件`if`的列表?

我创建一个列表如下:

['v0' if x%4==0 else 'v1' if x%4==1 else 'v2' if x%4==2 else 'v3' for x in list_1]
Run Code Online (Sandbox Code Playgroud)

如何推广这样一个列表的创建,以便它可以通过更多的变量和后续条件轻松扩展?

python if-statement list

17
推荐指数
2
解决办法
1566
查看次数

为什么链接的运算符表达式比扩展的等效表达式慢?

在python中,可以以这种方式链接运算符:

a op b op c
Run Code Online (Sandbox Code Playgroud)

评估为

a op b and b op c 
Run Code Online (Sandbox Code Playgroud)

唯一的区别b是只评估一次(所以更像是t = eval(b); a op t and t op c).

从具有显式连接(使用)的等效版本可读且更简洁的观点来看,这是有利的and.

但是......我注意到链接表达式和等效表达式之间存在微小的性能差异,无论是3个操作数还是20个.当你计算这些操作时,这一点就变得很明显了.

import timeit 

timeit.timeit("a <= b <= c", setup="a,b,c=1,2,3")
0.1086414959972899

timeit.timeit("a <= b and b <= c", setup="a,b,c=1,2,3")
0.09434155100097996
Run Code Online (Sandbox Code Playgroud)

和,

timeit.timeit("a <= b <= c <= d <= e <= f", setup="a,b,c,d,e,f=1,2,3,4,5,6")
0.2151330839988077

timeit.timeit("a <= b and b <= c and c <= d and …
Run Code Online (Sandbox Code Playgroud)

python comparison python-internals

17
推荐指数
1
解决办法
374
查看次数

"unstack"包含多行列表的pandas列

假设我有以下Pandas Dataframe:

df = pd.DataFrame({"a" : [1,2,3], "b" : [[1,2],[2,3,4],[5]]})
   a          b
0  1     [1, 2]
1  2  [2, 3, 4]
2  3        [5]
Run Code Online (Sandbox Code Playgroud)

我如何"取消堆叠""b"列中的列表以将其转换为数据帧:

   a  b
0  1  1
1  1  2
2  2  2
3  2  3
4  2  4
5  3  5
Run Code Online (Sandbox Code Playgroud)

python list dataframe pandas

16
推荐指数
1
解决办法
7750
查看次数

交织两个数据帧

假设我有两个数据帧d1d2

d1 = pd.DataFrame(np.ones((3, 3), dtype=int), list('abc'), [0, 1, 2])
d2 = pd.DataFrame(np.zeros((3, 2), dtype=int), list('abc'), [3, 4])
Run Code Online (Sandbox Code Playgroud)
d1

   0  1  2
a  1  1  1
b  1  1  1
c  1  1  1
Run Code Online (Sandbox Code Playgroud)
d2

   3  4
a  0  0
b  0  0
c  0  0
Run Code Online (Sandbox Code Playgroud)

交织两个数据帧列的简单和通用方法是什么.我们可以假设列数d2总是比列数少一个d1.并且,指数是相同的.

我要这个:

pd.concat([d1[0], d2[3], d1[1], d2[4], d1[2]], axis=1)

   0  3  1  4  2
a  1  0  1  0  1
b  1  0  1  0  1
c  1 …
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe pandas

16
推荐指数
3
解决办法
1132
查看次数

将列从一个数据框映射到另一个数据框以创建新列

我有一个数据帧

id  store    address
1    100        xyz
2    200        qwe
3    300        asd
4    400        zxc
5    500        bnm
Run Code Online (Sandbox Code Playgroud)

我有另一个数据帧df2

serialNo    store_code  warehouse
    1          300         Land
    2          500         Sea
    3          100         Land
    4          200         Sea
    5          400         Land
Run Code Online (Sandbox Code Playgroud)

我希望我的最终数据框看起来像:

id  store    address  warehouse
1    100        xyz     Land
2    200        qwe     Sea
3    300        asd     Land
4    400        zxc     Land
5    500        bnm     Sea
Run Code Online (Sandbox Code Playgroud)

即从一个数据帧映射到另一个数据帧创建新列

python mapping dataframe pandas

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