小编Nic*_*lia的帖子

反向 z 分数 pandas 数据框

我用它来计算数据帧的 z 分数:

df_z=df.apply(zscore)
Run Code Online (Sandbox Code Playgroud)

有没有可以给我原始值的反向操作?

python normalization pandas

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

截断日期时间对象 pandas

我想截断日期时间对象中的时间。我的最小示例如下所示:

    date  
 s1  7/26/2018 9:31       
 s2  7/26/2018 9:32      
 s3  7/26/2018 9:33       
 s4  7/26/2018 9:34      
 s5  7/26/2018 9:35       
 s6  7/26/2018 9:36     

data = [{'date': '7/26/2018 9:31'},{'date': '7/26/2018 9:32'}, 
{'date': '7/26/2018 9:33'},{'date': '7/26/2018 9:34'},
{'date': '7/26/2018 9:35'},{'date': '7/26/2018 9:36'}]

df = pd.DataFrame(data, index=['s1', 's2','s3','s4','s5','s6'])
Run Code Online (Sandbox Code Playgroud)

我想截断日期时间对象中的时间。我的目标是这样的:

    date  
 s1  7/26/2018       
 s2  7/26/2018       
 s3  7/26/2018        
 s4  7/26/2018       
 s5  7/26/2018        
 s6  7/26/2018      
Run Code Online (Sandbox Code Playgroud)

python datetime pandas

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

获取对应的中位数索引

我有一个包含一列的熊猫数据框,我想知道中位数的索引。也就是说,我这样确定中位数:

df.median()

这给了我中值,但我想知道该行的索引。是否可以确定这一点?对于长度不均匀的列表,我可以搜索具有该值的索引,但对于偶数列表长度,这将不起作用。有人可以帮忙吗?

这个问题在另一篇文章中被问到,答案基本上是搜索与中位数具有相同值的行。但就像我说的,这不适用于偶数长度的列表。

下面是一个最小示例(我在下面包含了 Wen 的建议):

df = pd.DataFrame(np.random.randn(6, 1), columns=list('A'))
df.median()
df.loc[df[0]==df[0].median()]

Out[120]: 
Empty DataFrame
Columns: [0]
Index: []
Run Code Online (Sandbox Code Playgroud)

python indexing median dataframe pandas

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

将日期转换为季度

我想将我的日期列转换为特定年份的季度指标,比如2018q1或2018q2等.

我的数据看起来像这样,我每季度有一次股票回报(这里没有显示返回列),而且相应的日期,列季度是我想得到的(或类似的东西)

data = [{'date': '3/22/18', 'quarter': 1},{'date': '3/22/18', 'quarter': 1}, 
{'date': '6/22/18', 'quarter': 3},{'date': '6/22/18', 'quarter': 3},
{'date': '9/22/18', 'quarter': 2},{'date': '9/22/18', 'quarter': 2}]
df = pd.DataFrame(data, index=['s1', 's2','s1','s2','s1','s2'])

        date  quarter
 s1  3/22/13       2013q1
 s2  3/24/13       2013q1
 s1  6/21/13       2013q2
 s2  6/26/13       2013q2
 s1  9/21/13       2013q3
 s2  9/28/13       2013q3
Run Code Online (Sandbox Code Playgroud)

python date pandas

5
推荐指数
4
解决办法
4413
查看次数

循环以动态填充数据框 R

我正在运行 for 循环来动态填充数据框(我知道小海豹死在某处,因为我使用的是 for 循环)

我有这样的想法(5 是返回标量的函数的占位符):

results<-data.frame(matrix(NA, nrow = length(seq(1:10)), ncol = 
length(seq(1:10))))
rows<-data.frame(matrix(NA, nrow = 1, ncol = 1))
for (j in seq(1:10)){
rows<-data.frame()
for (i in seq(1:10)){
   rows<-cbind(rows,5)
}
results<-cbind(results,rows)
}
Run Code Online (Sandbox Code Playgroud)

我使用上述方法收到以下错误消息。

Error in match.names(clabs, names(xi)) : 
names do not match previous names
Run Code Online (Sandbox Code Playgroud)

有更容易的方法吗?

loops r dataframe

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

计算熊猫数据框中的相同日期

我有一个带有日期列的数据框,我想创建一个新列,该列告诉我数据集包含多少个相同的日期。这是原始数据集的最小示例:

df1:

date         
2017/01/03     
2017/01/03     
2017/01/04     
2017/01/04     
2017/01/04     
2017/01/05     
Run Code Online (Sandbox Code Playgroud)

我想创建此date_count,因此目标数据集为:

df1:

date         date_count
2017/01/03     2
2017/01/03     2
2017/01/04     3
2017/01/04     3
2017/01/04     3
2017/01/05     1
Run Code Online (Sandbox Code Playgroud)

创建df1的实际代码:

dict1 = [{'date': '2017/01/03', 'date_count': 2},{'date': '2017/01/03',              'date_count': 2}, 
 {'date': '2017/01/04', 'date_count': 3},{'date': '2017/01/04',   'date_count': 3},
{'date': '2017/01/04', 'date_count': 3},{'date': '2017/01/05',    'date_count': 1}]
df = pd.DataFrame(dict1, index=['s1', 's2','s3','s1','s2','s3'])
Run Code Online (Sandbox Code Playgroud)

python date pandas

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

滞后/超前R中的整个数据帧

我很难带领或滞后于整个数据帧。我能做的是通过以下尝试来移动单个列,但不能进行全部操作:

require('DataCombine')
df_l <- slide(df, Var = var1, slideBy = -1)
Run Code Online (Sandbox Code Playgroud)

使用colnames(x_ret_mon)作为Var不起作用,我被告知在数据框中找不到变量名。

这种尝试将列向右移而不是向下移:

 df_l<- dplyr::lag(df)
Run Code Online (Sandbox Code Playgroud)

这只会为滞后变量创建新变量,但是我不知道如何有效删除旧的非滞后值:

 df_l<-shift(df, n=1L, fill=NA, type=c("lead"), give.names=FALSE)
Run Code Online (Sandbox Code Playgroud)

r lag lead dataframe

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

选择日期列的两个日期之间的数据框

我想根据日期列对数据框进行子集化,该列最初具有以下格式:

3/22/13
Run Code Online (Sandbox Code Playgroud)

在我将其转换为日期后:

df['date']=pd.to_datetime(df['date'], format='%m/%d/%y')
Run Code Online (Sandbox Code Playgroud)

我明白了:

2013-03-22 00:00:00
Run Code Online (Sandbox Code Playgroud)

现在我想用这样的子集:

 df.loc[(df['date']>'2014-06-22')]
Run Code Online (Sandbox Code Playgroud)

但这要么给了我一个空的数据框或一个完整的数据框,那就是没有过滤。

有什么建议我可以让它发挥作用吗?

备注:我很清楚在其他论坛上也有人问过类似的问题,但由于我的日期列看起来不同,我无法找到解决方案。

date dataframe pandas

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

如何将r中的数据帧从正转换为负

我想将我的r数据帧乘以-1,以便反转所有值的符号(转到+ - 反之亦然):

这不起作用:

df_neg <- df*(-1)
Run Code Online (Sandbox Code Playgroud)

还有另一种方法吗?

scalar r dataframe

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

标签 统计

pandas ×6

dataframe ×5

python ×5

date ×3

r ×3

datetime ×1

indexing ×1

lag ×1

lead ×1

loops ×1

median ×1

normalization ×1

scalar ×1