Delta

excel时间戳转化为标准日期(日期转化为日期戳)

只愿长相守 提交于 2020-05-02 04:52:16
最近在学习 python 将数据导入到 excel ,发现日期变成数字而不是日期格式的问题。 第一眼看去肯定是 excel 单元格格式问题,一般 excel 单元格格式为常规,而常规处理日期时就显示为数字,所以就想到用一个特定的数字(知道具体日期的),增加一天对应的数字就加 1 。 先看看 python 直接导入后日期的样子(下面时我随机举例的): 我们需要日期数据替换成标准的日期格式,具体的思路是: 1 、先用 excel 实验 2019-5-02 对应的日期时间戳是 43587 。 2 、再用 2019-5-02 减 43587 看是从什么时候开始计算,结论是 1899-12-30 。 import pandas as pd pd.to_datetime( ' 2019-05-02 ' )-pd.Timedelta( ' 43587D ' ) # D表示天 # Timestamp('1899-12-30 00:00:00') 3 、那么最后时间戳转化为日期:就只需要当前时间戳 +1899-12-30 批量转化 ( 定义转化日期戳的函数 ,dates 为日期戳 ) 方法一:用 pd 中得 Timedelta 和 to_datetime import pandas as pd def date(stamp): # 这个有个弊端,输入得时间戳过大后报错,最大支持多少106751

隐私保护新突破:高斯差分隐私框架与深度学习结合

笑着哭i 提交于 2020-05-01 13:41:16
  机器之心发布    机器之心编辑部       人工智能中的隐私问题已经公认为一个重要并且严肃的问题。近日,宾夕法尼亚大学的研究组开发了一个新的数据隐私分析框架,可以在多个类型的机器学习问题中有效保护个人隐私。这个框架现已成功和深度学习结合,并在多个需要保障隐私的深度学习任务中达到最高准确率。    什么是差分隐私   在这个大数据时代,如何妥善获取和使用与真人相关的数据,渐渐成为迫切需要解决的问题。没有人希望自己生个病,上个网,买件衣服都会被人随意知晓,更别提手机里没有修过的自拍了。 一种简单的隐私保护方法就是「匿名」:将收集到的数据中涉及个人信息的特征剔除。 可惜这种方法并不可靠,曾有研究将 Netflix 匿名处理过的观影记录通过交叉对比 IMDb 数据库解匿成功,这直接导致了第二届 Netflix 数据分析大奖赛的取消。   2006 年,隐私算法的研究迎来了新的里程碑。 Cynthia Dwork, Frank McSherry, Kobbi Nissim 和 Adam Smith 四位科学家定义了「差分隐私」(以下缩写为 DP) ,来严谨地分析隐私这个概念。差分隐私很快被证明是个强有效的工具,并被谷歌、苹果、微软、阿里巴巴等各大机构使用。而四位发明者于 2017 年获得了被誉为理论计算机科学界诺贝尔奖的 Godel 奖。   要理解差分隐私

隐私保护新突破:高斯差分隐私框架与深度学习结合

十年热恋 提交于 2020-05-01 13:19:42
人工智能中的隐私问题已经公认为一个重要并且严肃的问题。近日,宾夕法尼亚大学的研究组开发了一个新的数据隐私分析框架,可以在多个类型的机器学习问题中有效保护个人隐私。这个框架现已成功和深度学习结合,并在多个需要保障隐私的深度学习任务中达到最高准确率。 什么是差分隐私 在这个大数据时代,如何妥善获取和使用与真人相关的数据,渐渐成为迫切需要解决的问题。没有人希望自己生个病,上个网,买件衣服都会被人随意知晓,更别提手机里没有修过的自拍了。 一种简单的隐私保护方法就是「匿名」:将收集到的数据中涉及个人信息的特征剔除。 可惜这种方法并不可靠,曾有研究将 Netflix 匿名处理过的观影记录通过交叉对比 IMDb 数据库解匿成功,这直接导致了第二届 Netflix 数据分析大奖赛的取消。2006 年,隐私算法的研究迎来了新的里程碑。 Cynthia Dwork, Frank McSherry, Kobbi Nissim 和 Adam Smith 四位科学家定义了「差分隐私」(以下缩写为 DP) ,来严谨地分析隐私这个概念。差分隐私很快被证明是个强有效的工具,并被谷歌、苹果、微软、阿里巴巴等各大机构使用。而四位发明者于 2017 年获得了被誉为理论计算机科学界诺贝尔奖的 Godel 奖。 要理解差分隐私,我们可以看看下面这个简单的假设检验:假设有两个数据集 S, S' S={小明,小刚,小美};S'

[自用] 数论和组合计数类数学相关(定理&证明&板子)

微笑、不失礼 提交于 2020-05-01 05:05:11
0 写在前面   本文受 NaVi_Awson 的启发,有些地方相似,一些地方甚至直接引用,特此说明(感谢dalao)。 1 数论   1.0 gcd     1.0.0 gcd       $gcd(a,b) = gcd(b,a\;mod\;b)$      证明:设 $c\mid a$,$c\mid b$,则 $c\mid (b-a)$。         设 $c\nmid a$,则 $c$ 不是 $a,b-a$ 的公因子。         设 $c\mid a$,$c\nmid b$,则 $c$ 不是 $a,b-a$ 的公因子。 1 int gcd( int a, int b){ 2 if (!b) return a; 3 return gcd(b,a% b); 4 }     1.0.1 exgcd        对于一组不定方程 $a\times b+b\times y = c$。若 $gcd(a,b)\mid c$ 则这组方程有无数组解,否则无解。        求出一组 $a\times b+b\times y = gcd(a,b) $ 的解需要 $exgcd$,是在 $gcd$ 递归函数过程中实现的。        设 $x_0,y_0$ 是这一层的解,$x_1,y_1$ 是上一层的解。        首先边界条件:当$b=0$时显然$x_0=1,y_0=0$。  

SpringBoot 配置Redis

北城余情 提交于 2020-04-30 14:02:28
官方文档地址: https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/#why-spring-redis 环境 Springboot 2.1.0.RELEASE 1、添加jar包: <!--对redis的支持--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>   spring-boot-starter-data-redis中包含的依赖: <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>2.1.0.RELEASE</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis<

深入剖析 Delta Lake:Schema Enforcement & Evolution

感情迁移 提交于 2020-04-30 13:45:14
转载: https://databricks.com/blog/2019/09/24/diving-into-delta-lake-schema-enforcement-evolution.html 在实践经验中,我们知道数据总是在不断演变和增长,我们对于这个世界的心智模型必须要适应新的数据,甚至要应对我们从前未知的知识维度。表的 schema 其实和这种心智模型并没什么不同,需要定义如何对新的信息进行分类和处理。 这就涉及到 schema 管理的问题,随着业务问题和需求的不断演进,数据结构也会不断发生变化。通过 Delta Lake,能够很容易包含数据变化所带来的新的维度,用户能够通过简单的语义来控制表的 schema。相关工具主要包括 Schema 约束(Schema Enforcement)和 Schema 演变(Schema Evolution),前者用以防止用户脏数据意外污染表,后者用以自动添加适当的新数据列。本文将详细剖析这两个工具。 理解表的 Schemas Apache Spark 的每一个 DataFrame 都包含一个 schema,用来定义数据的形态,例如数据类型、列信息以及元数据。在 Delta Lake 中,表的 schema 通过 JSON 格式存储在事务日志中。 什么是 Schema 约束? Schema 约束(Schema Enforcement)

【Java并发】Java中的原子操作类

时光毁灭记忆、已成空白 提交于 2020-04-29 23:40:07
综述 JDK从1.5开始提供了java.util.concurrent.atomic包。 通过包中的原子操作类能够线程安全地更新一个变量。 包含4种类型的原子更新方式:基本类型、数组、引用、对象中字段更新。 atomic包中的原子操作类基本上内部都是使用Unsafe类实现的,原子更新的实质其实就是获取内存偏移地址,对地址中的变量进行更新 。 关于Unsafe类,可以参考我的这篇博文 【Java并发】Java中的Unsafe类 1.原子更新基本类型类 atomic包内包含AtomicBoolean、AtomicInteger、AtomicLong这3个类,以下以AtomicInteger进行讲解。 AtomicInteger是如何实现原子操作的? 是使用Unsafe类实现的,而Unsafe实现原子操作的原理是通过得到变量相对于对象示例的内存偏移地址,更新内存地址内的变量值。 下面是摘录的AtomicInteger的部分源码。 /** * Atomically increments by one the current value. * * @return the previous value */ public final int getAndIncrement() { return unsafe.getAndAddInt( this , valueOffset, 1 ); } /*

Vue 实现的音乐项目 music app 知识点总结分享

情到浓时终转凉″ 提交于 2020-04-29 15:36:45
其他 此应用的全部数据来自 QQ音乐,利用 axios 结合 node.js 代理后端请求抓取 全局通用的应用级状态使用 vuex 集中管理 全局引入 fastclick 库,消除 click 移动浏览器 300ms 延迟 页面是响应式的,适配常见的移动端屏幕,采用 flex 布局 疑难总结 & 小技巧 关于 Vue 知识 & 使用技巧 v-html 可以转义字符,处理特定接口很有用 watch 对象可以观测 属性 的变化 像这种父组件传达子组件的参数通常都是在data()里面定义的,为什么这里要放到created()定义,两者有什么区别呢? 因为这个变量不需要观测它的变化,因此不用定义在 data 里,这样也会对性能有所优化 不明白什么时候要把变量放在data()里,什么时候又不需要放 ? 需要监测这个数据变化的时候,放在 data() 里,会给数据添加 getter 和 setter 生命周期 钩子函数 生命周期钩子函数,比如 mounted 是先触发子组件的 mounted,再会触发父组件的 mounted,但是对于 created 钩子,又会先触发父组件,再触发子组件。 销毁计数器 如果组件有计数器,在组件销毁时期要记得清理,好习惯 对于 Vue 组件,this.$refs.xxx 拿到的是 Vue 实例,所以需要再通过 $el 拿到真实的 dom 关于 JS 知识 &

调试seanbell/intrinsic遇到的坑

最后都变了- 提交于 2020-04-29 04:08:37
那些遗忘过去的人注定要重蹈覆辙。——乔治•桑塔亚纳 Authorized error 刚开始按作者 GitHub 上的指示,当运行环境配置好,并且 make 之后,因为生成的 decompose.py 是可执行文件,直接运行 bell2014/decompose.py ../../original.png 就出现了这样的错误 import : not authorized `pd ' @ error/constitute.c/WriteImage/1028 看到有相关问题的解答中提到 这是python脚本,不应该把它当成shell脚本运行,当然会报错 突然反应过来,我们通常在终端直接运行的可执行文件一般由 /usr/bin/sh 来作为默认执行器 而 .py 脚本需要显式指出 python 解释器,这样就有了解决方案,直接用 python 来运行就可以了啊 python3 bell2014/decompose.py ../../original.png namespacepath error AttributeError: ' _NamespacePath ' object has no attribute ' sort ' 该错误好像与 pip 有关,可以使用以下命令解决 sudo pip3 install --upgrade setuptools numpy error

梯度提升树(GBDT)原理小结

喜欢而已 提交于 2020-04-28 11:46:17
    在 集成学习之Adaboost算法原理小结 中,我们对Boosting家族的Adaboost算法做了总结,本文就对Boosting家族中另一个重要的算法梯度提升树(Gradient Boosting Decison Tree, 以下简称GBDT)做一个总结。GBDT有很多简称,有GBT(Gradient Boosting Tree), GTB(Gradient Tree Boosting ), GBRT(Gradient Boosting Regression Tree), MART(Multiple Additive Regression Tree),其实都是指的同一种算法,本文统一简称GBDT。GBDT在BAT大厂中也有广泛的应用,假如要选择3个最重要的机器学习算法的话,个人认为GBDT应该占一席之地。 1. GBDT概述     GBDT也是集成学习Boosting家族的成员,但是却和传统的Adaboost有很大的不同。回顾下Adaboost,我们是利用前一轮迭代弱学习器的误差率来更新训练集的权重,这样一轮轮的迭代下去。GBDT也是迭代,使用了前向分布算法,但是弱学习器限定了只能使用CART回归树模型,同时迭代思路和Adaboost也有所不同。     在GBDT的迭代中,假设我们前一轮迭代得到的强学习器是$f_{t-1}(x)$, 损失函数是$L(y, f_{t-1