自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(111)
  • 资源 (1)
  • 收藏
  • 关注

原创 python concat报错:plan shapes are not aligned

python将两个dataframe上下拼接到一起时,报错:“plan shapes are not aligned”然后又检查了下代码,发现对第二个dataframe调整了字段的格式,从string变成了float。所以两个dataframe要做concat,不仅字段名称应该完全相同,字段格式也应该完全相同。仔细查看了两个dataframe的columns,完全相同。

2023-02-01 14:58:45 630 1

原创 通过python获取finebi中的仪表板的token

第二种是通过python获取finebi的token,从而可以获取所有API的应用。(例如查看目前所有的仪表板)通过python可以构建比较复杂的web 应用,所以二者结合,可以在python的web应用中嵌入炫酷的大屏。有了该Token后,就可以解锁所有的API了。finebi(帆软)是一个BI工具,可以实现无代码的大屏展示,效果很棒。第一种是创建仪表板的公共链接。然后将该连接嵌入到web应用中进行跳转。有两种做法可以实现这个效果。

2022-12-21 14:50:39 688

原创 使用mingw执行git diff遇到中文乱码的问题

【代码】使用mingw执行git diff遇到中文乱码的问题。

2022-11-28 17:07:54 6927

原创 使用二阶动态规划解决方格取数

采用2维动态规划方法解决方格取数

2022-11-09 20:56:03 565

原创 python split()小trick

python中的split()技巧

2022-10-30 10:41:33 200

原创 linux下oracle服务器打开允许远程连接

环境:linux,oracle服务器,使用docker里的python访问oracle数据库。报错:ORA-12541:TNS:no listener 排查:su - oracle切换成oracle用户后,用sqlplus可以连接到数据库,说明数据库本身是没问题的。运行:lsnrctl status,发现监听终端是localhost。明白了,这是限制了远程连接。解决方法:修改配置服务端listener.ora,加上HOST=0.0.0.0,如果不加,默认只能运行在本机的程序才能访问。LISTENER =(

2022-06-24 08:11:35 1528

原创 在oracle中新建一个空的列的避坑

在oracle中新建一些空列

2022-06-13 16:34:26 699

原创 解决docker里matplotlib和plotly画图以及保存图片时中文乱码的问题

解决docker里jupyter中文乱码的问题

2022-06-12 22:23:20 1301 1

原创 利用streamlit搭建个人文档管理系统

1. 安装docker版的mongodbdocker pull mongo然后参考https://www.runoob.com/docker/docker-install-mongodb.html启动docker image。我使用的命令是:docker run -name my-mongo --restart=always -p 27017:27017 -d -v /home/mongodb/datadb:/data/db mongo:latest --auth2. mo

2022-05-28 12:42:06 1367

原创 streamlit部署发布应用

streamlit很好用,可以快速搭建app。更有趣的是,还可以发布应用,真是一站式解决方案啊。今天尝试了一把,流程简单,非常nice。1. 代码传到github1.1 首先在github上建立账号,然后在本机上安装git类的工具。本人是linux系统,直接apt-get install git即可。1.2 使用github的账号在本机生成ssh-gen,参考:Connecting to GitHub with SSH - GitHub Docs将id_ed25519.pu.

2022-05-22 19:19:56 3334 1

原创 解决streamlit-multipage的报错

最近开始入行streamlit,用起来不要太爽,终于可以完全基于python从后端的数据处理到前端的可视化展示一条龙搞起来,大大加快了单兵生产力的产出。streamlit本身是个单app的应用,背后是一个脚本从头到脚跑一遍。于是出现了很多扩展应用,在streamlit的基础上扩展成多app的应用,今天试用了一下streamlit-multipage,可以做成多page的app,其实也没啥神秘的,本质就是通过pickle把一个页面的数据写成文件,再从另外一个页面加载的方式来实现页面之间的通信。

2022-05-22 09:32:55 1380

原创 基于streamlit的表格展示-完美解决方案

问题用streamlit开发web app非常实用。但是streamlit的表格展示非常不友好,只有两个简单的接口函数:st.table(df)和st.dataframe(df)。对于字段稍微比较多的dataframe显示效果相当不友好。st.table(df)会展开所有字段,st.dataframe(df)会压缩到一起,字段名称看不清楚。主要局限为:1. 不能控制每个列的宽度。虽然接口里有width和height两个参数,但是亲测不太管用。2. 行数多的时候,会一直在页面上往下排列

2022-05-15 10:08:04 8954 4

原创 docker非正常退出后,重启时报错error adding seccomp filter rule for syscall clone3

问题电脑合盖后,没有待机,电源耗尽关机。里边运行的docker没有正常退出,再开机时,容器启动不起来了,报错如下:docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "error adding seccomp filter rule for syscall clone3: permission denied":

2022-05-15 09:05:21 2534 2

原创 spark中使用uuid:一不小心就会掉坑里

背景项目使用pyspark开发一个大数据的程序,读入hive数据,各种运算后,得到一些结果写回到hive。程序中,有一步是调用uuid生成一个32位的唯一ID。df = df.withColumn('uuid', F.udf(lambda x: str(x.uuid1())))然后紧接着使用这个uuid作为外键,先groupby,然后与df进行了一次关联。问题上面的第2步,竟然关联不上。这就奇怪了,明明是用的同样的字段进行关联,没理由啊。后来看了下两个表,uuid的值

2022-05-11 22:16:39 1434

原创 spark中的资源配置总结

spark中有太多的概念,有时候会分辨不清。比如,什么是worker?什么是executor?每个worker有多少CPU核?是否设置得合理?要回答这些问题,首先要理解,spark-env.sh中的worker的配置是表示该worker能拿到的总资源。如图所示,设置SPARK_WORKER_CORES=4,代表每个worker的总CPU资源是4个逻辑核。worker就像是一个部门经理,握有资源,手下有具体干活的小弟:executors。根据手里资源的多少,可以决定招多少个小弟。

2022-05-06 13:14:34 1243

原创 不重启容器的情况下添加或者删除端口

通常对已经启动的容器添加端口需要先停止容器,然后修改启动脚本,再重新restart。但是有一种方法可以利用iptable在不重启容器的情况下,增加端口。增加端口add_port.shecho $1echo $2iptables -t nat -A DOCKER ! -i docker_gwbridge -p tcp -m tcp --dport $2 -j DNAT --to-destination $1:$2iptables -t nat -A POSTROUTING -s $

2022-04-18 17:54:23 2645

原创 pyspark 报错:local class incompatible的解决方法

1. 总结如果使用jupyter以standalone方式调试pyspark程序时,务必要保持driver端的pyspark版本与hadoop里的pyspark版本一致。2. 具体问题使用pyspark程序,如果报错类似:local class incompatible: stream classdesc serialVersionUID = -3328732449542231715, local class serialVersionUID = 4416556597546473068

2022-03-30 13:08:59 2327

原创 hive数据从一个主机迁移到另外一个主机

hive数据的迁移可以通过HDFS数据导出再导入的方法。1. 从hive导出表到HDFS数据export table 表名字 to'/xxx/'2. 将HDFS数据复制到本地hdfs dfs -copyToLocal /xxx . 3. 将HDFS数据下载并上传到另外一台服务器的HDFS上hdfs dfs -copyFromLocal xxx/ /4. 将HDFS数据import到hive上import table 表名 from '/xxx/表名';由于.

2022-03-22 09:06:32 3422

原创 python multiIndex 操作攻略

python pivot操作后,会出现multiIndex的dataframe。这种dataframe的切片取值和条件取值,与普通的dataframe还是有些区别的。1. 准备数据import pandas as pddf = pd.DataFrame({'class':['A','A','A','B','B','B','C','C'], 'id':['a','b','c','a','b','c','a','b'],

2022-03-13 19:34:34 4425

原创 docker中的jupyter设置启动密码

针对docker中已经安装了jupyter的情况下,通常会在启动容器时设置自动启动jupyter notebook,例如:docker run -it -d -m 20G --memory-swap -1 --restart=always --name myai -p 8888:8888 -v /home/xxx/:/usr/src/app python1.3 jupyter notebook --ip=0.0.0.0 --port=8888 --allow-root执行脚本把容器run起来后

2022-03-13 16:09:42 3981

原创 python操作livy:将python环境作为archives包传递给spark

通过livy可以用rest api的方式调用pyspark的程序。在hadoop-master里可以用curl来测试,然后在8988界面里查看状态。摸索了几次后,终于调通:pyspark需要的python环境包可以通过archives的方式传进去,并在conf里指定python的路径:curl -X POST --data '{"file": "hdfs:///test_code/pi_v1.py","args":["2"],"archives":["hdfs:///test_model/

2022-03-08 09:42:45 2532

原创 百度地图API获取经纬度实战

代码:import urllib.request, urllib.parse, urllib.errorimport jsonimport hashlibimport timeimport requestsMyAK='xxx'MySK='xxx'city='北京市' # 通过增加城市参数,可以提升经纬度的准确率#处理得到urldef get_url(name): queryStr = '/geocoding/v3/?address={}&city={}..

2022-03-08 08:43:36 2111

原创 一键下载指定python包的所有依赖选项

公司的开发环境是离线的服务器,没办法用pip install 一键安装所有依赖包。一个一个地下载whl又超级麻烦。幸好还有一个方法可以一键下载。1. 找到一个能联网的,和离线服务器同样的环境,比如都是linux的,都是python3.6的版本。2. 在能联网的服务器上运行:(以下载安装pyecharts为例)pip download pyecharts -d ./pyecharts_packages会看到在联网电脑上新建了一个pyecharts_packages的文件夹,里边包含了

2022-02-10 17:33:12 2142

原创 python的plt.text()用format输出unicode字符

需求用python的matplotlib里的plt.text()来在文字的前边加上特殊字符显示,例如带圈的数字。实现首先在word里找到特殊字符的unicode编码:直接输出'\u2460'没问题,可以输出想要的字符。但是如果格式化输出就会报错,比如我想循环输出1到9,就不灵了。原因是'\u'这个前缀自动会把后面的字符进行解释,如果不是合理的字符,就会报错。那怎么做呢?我们可以利用html字符中转一下:先找到\u2460的html字符,然后用chr来格

2022-01-27 10:58:20 2619

原创 用Sqoop从oracle导出到Hive中的ORC table

之前尝试的都是用sqoop导出到hive中的hdfs里,作为外部表。再到hive里建内部表,关联上外部表。这次尝试直接用sqoop将oracle数据(千万量级)导出到hive中的内部表里。全程不需要手动建表,方法如下:1. 利用cx_Oracle程序从oracle里读取表格的前几行数据,读成pandas dataframe。2. 利用pyspark程序从oracle里用spark.read.jdbc读取原始表,返回值为pyspark dataframe。3. 利用pyspark的sche

2021-12-13 11:01:51 2696

原创 离线环境下解决pyecharts渲染出的html网页空白的问题

在公司的内网上跑pyecharts生成的html,打开后是空白的。原因:pyecharts会自动去https://assets.pyecharts.org/assets/上拉取js,不联网的情况下就获取不到文件,所以出不了图。参考了网上的教程,但是不能直接解决,需要略作修改。下面分别对两种场景提出解决方法,一种是python直接跑在物理机上,另外一种是python跑在容器里。物理主机上运行python1. 下载pyecharts-assets-master.zip并解压上传到服务器上。

2021-09-01 09:20:50 4087 3

原创 oppo手机设置wifi代理和charles证书

手机型号: oppo reno4 pro目的:用charles监听手机端口方法:1. PC上安装charles并打开2. charles保存证书,并发送到手机上。保存为.cer格式的文件。3. oppo上依次点击设置-安全-凭据存储-从存储设备安装证书-WLAN证书,选择刚才的cer文件,安装成功。4. oppo手机上设置wifi代理:4.1 设置-WLAN,然后先点“移除该网络”,解除默认链接的wifi4.2 点击wifi名称右边的圆圈,设置代理:4.3 将..

2021-07-25 22:10:06 8408

原创 neo4j 查询实战

1. 根据节点属性查找对应节点:其他例子:    match(x:Student{studentId:'1001'}) return x    或者    match(x:Student) where x.studentId='1001' return x我的例子:  2. 根据关系查找节点其他例子:    match (x)-[r:教学内容]-(y) where r.课程='语文' return x,r,y我的例子:match p=(n:`药...

2021-07-20 10:38:31 8900 5

原创 mongodb

一、安装官网没办法下载,点击链接没反应,按了F12,好歹链接能点了,下载下来的直接是个安装包,也不是可安装文件。运行monogd也失败了。一通搜,搜到这个链接里可以下载msi可安装文件:https://www.mongodb.org/dl/win32/x86_64二、启动mongodb 数据服务器在c盘下新建一个data/db的文件夹,作为mongodb存储数据库的位置。然后运行mongod.exe,成功三、运行scrapy报错:AttributeError: 'list

2021-07-18 21:42:15 185

原创 py37和win10下的scrapy安装和错误调试

错误1:from cryptography.hazmat.bindings._openssl import ffi, libImportError: DLL load failed: 找不到指定的程序。解决:先卸载再安装:pipuninstall pyopensslpipuninstall cryptographypipinstall pyopensslpipinstall cryptography安装pyopenssl的过程中报错:“cannot find rust...

2021-07-18 16:29:37 1347

原创 利用python的decrator实现一个只调用一次的函数

需求:实现一个装饰器,把一个函数变成只调用一次的函数。实现:def only_run_once(func): @functools.wraps(func) def wrapper_only_run_once(*args, **kwargs): if wrapper_only_run_once.first_call == 0: return wrapper_only_run_once.result else: ...

2021-07-12 15:42:34 520

原创 Microsoft Visual C++ 14.0 or greater is required的解决方法

有些python包安装的时候,会报这个错误。这是个常见的错误,汇总一下网上的解决方案:有的blog里说了最佳解决方法就是下载Microsoft Visual C++ Build Tools 2015:http://go.microsoft.com/fwlink/?LinkId=691126但是很多人下载下来包后,安装时候会发现遇到“Microsoft Visual C++ 安装包丢失或损坏”的问题。这个问题其实是由于墙的问题,需要翻墙才能下载继续安装。后来又参考了:https

2021-07-06 16:52:34 16533

原创 django后端搭建指南

按照https://realpython.com/django-setup/搭建django后端。略有几个小问题,一并记录下来。1. 用django-admin.py初始化一个项目时,运行这条语句后,自动打开了pycharm。这是因为之前设置了*.py文件的默认打开方式是pycharm。django-admin.py startproject my_django15_project解决方案是设置*.py文件的默认打开方式为python.exe。2. 仍然有问题解决方案:打开注册

2021-07-01 16:42:47 589

原创 用yarn提交pyspark程序

首先验证sparkPi的demo可以运行成功如果这个跑不成功,检查下/usr/local/spark/conf/spark-env.sh里是否设置了yarn_conf_dir:用yarn提交pyspark程序报错:异常信息:pyspark.sql.utils.AnalysisException: ‘java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.h.

2021-06-27 11:52:45 1072 1

原创 hadoop中的各种xxx-site.xml配置文件

参考:https://blog.csdn.net/u013429010/article/details/82983708hadoop中有几个比较重要的xml配置文件,如下图中绿色的高亮文件所示:core-site.xml1. 指定namenode的地址,就是如下页面的地址:2.用来指定使用hadoop时产生文件的存放目录3.用来设置检查点备份日志的最长时间hdfs-site.xml1.指定hdfs保存数据的副本数量2.指定hdfs中namenode的存储...

2021-06-23 10:25:25 748

原创 搞定hive读取ES表

最近的项目中用hive作为数仓工具,并用pyspark进行数据处理。后来需要进行一些前端展示,发现检索数据实在是太慢了,尤其是还要进行一些toPandas()的操作,来把

2021-06-17 16:59:39 863

原创 利用kettle从oracle向clickhouse里导数据

Kettle连接clickhose1.Kettle 连接clickhose时需要自己下载clickhose的lib包 将下载好的lib包放到kettle的lib目录下下载地址:https://github.com/ClickHouse/clickhouse-jdbc/releases下载文件名:clickhouse-jdbc-0.3.1-patch-shaded.jar2.创建oracle和clickhouse连接3.Clickhouse连接如下图所示,clickhous..

2021-06-17 13:46:42 1817 1

原创 docker配置es & kibana以及docker ip解析

通过docker安装es通过docker安装kibanadocker网桥解析

2021-06-16 11:29:33 1407

原创 数据库ABC

引子本科学的是数学+软件工程的双学位,硕士学的是计算机应用技术。后来工作中一直做算法,对于数据库的知识仅仅是select出来到python中变成dataframe,然后利用各种

2021-06-14 14:50:18 311

原创 clickhouse 部署&调试

clickhouse安装clickhouse的安装很简单,从官网下载几个从hive导数据到clickhouse中

2021-06-11 17:38:00 905 2

matlab调用cuda函数

利用matlab调用cuda函数。利用GUP获得高性能,利用matlab可以获得快速的开发

2010-01-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除