小编Tyl*_*rNG的帖子

大熊猫按条件将df转换成矩阵

是否有可能将df转换为如下所示的矩阵?鉴于df:

Name Value
x    5
x    2
x    3
x    3
y    3
y    2
z    4
Run Code Online (Sandbox Code Playgroud)

矩阵将是:

Name    1    2    3   4   5   
x       4    4    3   1   1
y       2    2    1   0   0
z       1    1    1   1   0
Run Code Online (Sandbox Code Playgroud)

这是它背后的逻辑:

Name    1    2    3  4    5   (5 columns since 5 is the max in Value)
--------------------------------------------------------------------
x       4 (since x has 4 values >= 1)     4 (since x has 4 values >= 2)    3 (since …
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe pandas

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

Pandas将字符串转换为月末日期

我有这个问题,我的df中的一列以字符串形式输入,但我想将其转换为python中的日期月末.例如,

   Id Name    Date  Number
0   1    A  201601       5
1   2    B  201602       6
2   3    C  201603       4
Run Code Online (Sandbox Code Playgroud)

Date列的年份和月份为字符串.理想情况下,我的目标是:

   Id Name        Date  Number
0   1    A  01/31/2016       5
1   2    B  02/29/2016       6
2   3    C  03/31/2016       4
Run Code Online (Sandbox Code Playgroud)

我能够使用Endmon和excel在excel上执行此操作,但是当我在python中尝试pd.to_datetime时,它无法正常工作.谢谢!

python date pandas

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

pandas 将行除以总数

我有这个 df:

Name    num1  num2   num3  
A       1      2      3    
B       4      5      6    
C       7      8      9    
Run Code Online (Sandbox Code Playgroud)

我的目标是将每一行除以总数。这就是我想出的:

df.loc[:,"num1":"num3"] = df.loc[:,"num1":"num3"].div(df["total"], axis=0)
Run Code Online (Sandbox Code Playgroud)

效果很好。但是,如果在 num3 之后添加了更多“numx”列,我将不得不手动将代码更新为“num1”:“numx”。有办法解决这个问题吗?

python row division pandas

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

熊猫总和

我有一个df:

Value1  Value2  1   2   3
  1       A     0   1   2
  2       B     3   4   5
  3       C     2   2   2
Run Code Online (Sandbox Code Playgroud)

我想在行和列之间执行sumproduct 1 2 3:

Value1  Value2  1   2   3   sumproduct
  1       A     0   1   2   8    = 0*1 + 1*2 + 2*3
  2       B     3   4   5   26   = 3*1 + 4*2 + 5*3
  3       C     2   2   2   12   = 2*1 + 2*2 + 2*3
Run Code Online (Sandbox Code Playgroud)

我试过(df.values*df.columns.values).sum(1),但后来我需要删除Value1Value2第一列。有没有更好的方法?

非常感谢!

python product sum pandas

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

TypeError:<class'datetime.time'>不能转换为datetime

问题有点简单。我的目标是计算两个日期(例如A和B)之间的天差。
这是我的尝试:

df['daydiff'] = df['A']-df['B']

df['daydiff'] = ((df['A']) - (df['B'])).dt.days

df['daydiff'] = (pd.to_datetime(df['A'])-pd.to_datetime(df['B'])).dt.days
Run Code Online (Sandbox Code Playgroud)

这些以前对我有用,但由于某种原因,这次我一直收到此错误:

TypeError:类'datetime.time'不能转换为datetime

当我将df导出到excel时,日期就可以了。任何想法?

date pandas

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

熊猫添加带有 if 条件的列

嗨,我不确定如何将新列 z 添加到我现有的 df 中,其中 z = x if x is not 0 else y 。

例如:

Name  x  y  |z (new col)
A     1  5  |1
B     2  6  |2
C     0  3  |3
D     0  0  |0
Run Code Online (Sandbox Code Playgroud)

np.where 在这种情况下适用吗?

谢谢!

python pandas

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

标签 统计

pandas ×6

python ×5

date ×2

dataframe ×1

division ×1

numpy ×1

product ×1

row ×1

sum ×1