小编los*_*l29的帖子

Pandas.Dataframe.duplicate() 包括缺失的行作为重复项

我有一个名为 的 Pandas Dataframe Merged,它有一个名为 的属性RegimentalNumber

我正在使用该Pandas.Dataframe.duplicated()方法从此数据框中检索重复项,如下所示:

In [16]: Merged[Merged.RegimentalNumber.duplicated() == True]
Run Code Online (Sandbox Code Playgroud)

但是,结果似乎还包含RegimentalNumber重复项的缺失值。

该方法是否duplicated()采用标志或参数来排除缺失值作为重复项?我查看了此方法的API 文档,但找不到这样的标志。

当然,我可以简单地排除缺失值,如下所示:

In [17]: duplicates = Merged[Merged.RegimentalNumber.duplicated() == True]
In [18]: duplicates[duplicates.RegimentalNumber.notnull()]
Run Code Online (Sandbox Code Playgroud)

duplicated()然而,在我看来,该方法还包含缺失值作为重复项,这似乎并不正确。有没有更简单的一步解决方案?

python ipython pandas

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

如何在Seaborn点图上获取数据标签?

我有两个这样的数组:

Soldier_years = [1850, 1851, 1852, 1853, 1854, 1855, 1856, 1857, 1858, 1859, 1860, 1861, 1862, 1863, 1864, 1865, 1866, 1867, 1868, 1869, 1870]
num_records_yob = [7, 5, 8, 9, 15, 17, 23, 19, 52, 55, 73, 73, 107, 137, 65, 182, 228, 257, 477, 853, 2303]
Run Code Online (Sandbox Code Playgroud)

我试图将这些变成Seaborn点图,如下所示:

%matplotlib inline
import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="darkgrid")

f, (ax) = plt.subplots(figsize=(12, 6), sharex=True)

sns.set_style("darkgrid")
ax = sns.pointplot(x=Soldier_years, y=num_records_yob)
Run Code Online (Sandbox Code Playgroud)

我得到一个像这样的点图:

Pointplot

这个情节几乎就是我想要的.如何获得每个点的数据标签以显示在各个点之上?

我试过了ax.patches,但它是空的.

我试图让它看起来像这样(但对于点图): 在此输入图像描述

python matplotlib scipy pandas seaborn

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

根据日期范围合并数据框

我有两个大熊猫dataframes:一个(df1)有三列(StartDate,EndDate,和ID)和第二(df2)用日期.我想合并df1df2基于df1.StartDate和之间的df2.Date df2.EndDate.

每个日期范围df1都是唯一的,不会与数据框中的任何其他行重叠.

日期格式化YYYY-MM-DD.

python python-2.7 pandas

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

在Angular 1.5组件中注入服务的示例

任何人都可以举例说明使用Angular 1.5组件的服务吗?

我正在尝试在Angular 1.5组件中注入服务,但它不起作用.

我有一个像这样的登录组件:

class Login {
    constructor($scope, $reactive, $state, myService) {
        console.log(myService.somevariable); //doesn't work
    }
}

// create a module
export default angular.module(name, [
    angularMeteor
]).component(name, {
    templateUrl: 'imports/ui/components/${name}/${name}.html',
    controllerAs: name,
    controller: Login
});
Run Code Online (Sandbox Code Playgroud)

我的服务如下:

angular.module(name).service("myService", function () {
    this.somevariable = 'somevalue';
});
Run Code Online (Sandbox Code Playgroud)

我似乎无法在组件中注入服务.我做错了什么?

解:

sebenalern的帮助下,我得到了它的工作.

我需要一项服务来使用正则表达式验证电子邮件地址.我是这样做的:

import angular from 'angular';
import angularMeteor from 'angular-meteor';
class Validator { 
    validateEmail(email) {
        var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
        return re.test(email);
    }
}

const name = 'validator';

// create a module …
Run Code Online (Sandbox Code Playgroud)

angularjs

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

pandas DataFrame用值作为元组进行dict

我有DataFrame如下:

In [23]: df = pandas.DataFrame({'Initial': ['C','A','M'], 'Sex': ['M', 'F', 'F'], 'Age': [49, 39, 19]})
         df = df[['Initial', 'Sex', 'Age']]
         df

Out[23]:   
  Initial Sex  Age
0       C   M   49
1       A   F   39
2       M   F   19
Run Code Online (Sandbox Code Playgroud)

我的目标是创建一个像这样的字典:

{'C': ('49', 'M'), 'A': ('39', 'F'), 'M': ('19', 'F')}
Run Code Online (Sandbox Code Playgroud)

目前,我这样做:

In [24]: members = df.set_index('FirstName', drop=True).to_dict('index')
         members

Out[24]: {'C': {'Age': '49', 'Sex': 'M'}, 'A': {'Age': '39', 'Sex': 'F'}, 'M': {'Age': '19', 'Sex': 'F'}}
Run Code Online (Sandbox Code Playgroud)

然后我使用dictcomprehrension将键的值格式化为元组而不是dicts:

In [24]: members= {x: …
Run Code Online (Sandbox Code Playgroud)

python dictionary dataframe pandas

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

链式和条件给出了模糊的结果

有人可以解释以下内容吗?

a = [2,3,4]
b = [5,6,8,9]

print(len(a) > 0)
print(len(b) > 0)
print((len(a) > 0) & len(b) > 0))
Run Code Online (Sandbox Code Playgroud)

输出:

True
True
False
Run Code Online (Sandbox Code Playgroud)

最后一个print语句不应该返回True吗?如果我现在重写为:

print((len(a) > 0) & (len(b) > 0))
Run Code Online (Sandbox Code Playgroud)

(注意第二个AND条件周围的括号),我得到输出为True.

这让我感到困惑.为什么在括号中包含第二个AND条件会改变结果?

python

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