- 博客(88)
- 资源 (1)
- 收藏
- 关注
原创 Airflow metastore清理
专注于分享利用数据科学工具,欢迎一起交流、学习、合作。关于我的博客内容、其他相关的研究问题,有问题可以下方👇。airflow metastore的table主要有。),关注能源与环境数据科学。timestamp的格式为。我目前奥尔堡大学做博士后(
2023-08-09 16:58:24 556
原创 Git删除不同对象
专注于分享利用python科研的技巧,欢迎一起交流、学习、合作。关于我的博客内容、其他相关的研究问题,有问题可以下方👇。),关注能源转型过程中的环境、经济问题。我目前奥尔堡大学做博士后(
2023-03-16 16:50:33 177
原创 不同command line interface中 python Venv虚拟环境的激活方式
不同command line interface中 python Venv虚拟环境的激活方式
2022-12-20 17:48:57 156
原创 pytest测试框架使用
pytest测试框架极简教程这样,命令行可以识别指令编写测试脚本,脚本名称要符合pytest命名规则。编写的脚本要以开头或结尾。如 编写单元测试函数,如:一是要二是要有之类的判定函数
2022-07-05 18:24:41 180
原创 python DEA: by-product NDDF DEA模型
by-product DEA模型取消了常用的DEA模型中的弱处置性(weak disposability),可以用来模拟副产品与主产品相关性不强的情景。
2022-06-18 18:39:55 1216
原创 Python生命周期分析: Brightway2 报错unlink exchange的调试方法
用brightway2和构建基于excel的生命周期数据库时,常出现一下报错link = r"path\to\database.xlsx"db = bw.ExcelImporter(link)db.apply_strategies()db.match_database( db_name="ecoinvent 3.6", fields=["name", "unit", "location", ],)db.statistics()...
2021-11-07 22:26:46 632
原创 C/C++: c语言中的多行注释和单行注释
多行注释/*This is a multiple line commentline 1line2*/单行注释int variable // comment on this variable
2021-10-17 22:31:31 3146
原创 C/C++: windows系统安装C++编译器、用VS code创建C++程序
安装C++编译器Linux 和 macOS 一般都预装了C++编译器,而windows 系统上没有。要进行C++编程,首先要在 windows 系统上安装 C++ 编译器。windows 系统下最常用的编译器是 MinGW,我们可以在 MSYS2 windows 软件平台上下载。首先下载 MSYS2系统需求:window 7及以上下载完后,在开始菜单栏 点击启动 MSYS2使用pacman -Su指令升级所有程序包安装 mingw-w64,这是64位系统,32位可安装x86版本pac
2021-10-09 15:29:45 2840
原创 能源系统建模:利用gcam_reader批量导出GCAM database数据
点赞发Nature关注中ScienceGCAM计算结果我们可以用model interface直接查看,在model interface中直接复制结果即可。但有时我们需要批量导出结果,此时,我们可以利用python的gcam_reader包。gcam_reader包并不在PyPI中,需要从JGCRI下载获取。pip install https://github.com/JGCRI/gcamreadergcam_reader将database读取为DataFrame:import gcam_re
2021-10-05 09:44:11 5459 5
原创 python绘图:截取matplotlib colormap色谱的一部分
点赞发Nature关注中Sciencematplotlib.colors中,整个色谱的频段太宽,边缘区域的颜色太深,不适合作图,我们希望截图整个色谱的一部分用于作图,以下是代码:import matplotlib.colors as colorsimport matplotlib.pyplot as pltimport numpy as npdef truncate_colormap(cmap, minval=0.0, maxval=1.0, n=100): new_cmap = co
2021-08-24 08:55:24 3531 3
原创 python DataFrame中包含数字的字符串索引排序
点赞发Nature关注中Science假设一个dataframe,他的index是如下所示df = pd.DataFrame([[1, 3, 4], [2, 3, 4], [3, 4, 5],[4,5,6],[1.,5,6],[2,4,1],[3,4,6]],index = ["optimized_b_0","optimized_b_1","optimized_b_2","optimized_b_3","optimized_b_4","optimized_b_12","optimized_
2021-08-10 14:49:22 1799
原创 python Nonlinear Programming: SciPy求解满足KKT条件的非线性方程
点赞发Nature关注中ScienceKKT conditions是广义Lagrange Multiplier下非线性优化的必要条件。非线性优化的基本构建如下当满足KKT条件时,SciPy.minimize方法可用以求解该非线性方程。对于Lagrange Function:g(x), f(x)是连续可微分函数(保证梯度下降求解方法)L是可全微分函数具体的KKT条件可查看:KKT条件详解以下是一个满足KKT的非线性规划问题的SciPy求解Referenceimport numpy
2021-07-08 14:32:29 1025 1
原创 能源系统建模:configuring carbon market in GCAM
点赞发Nature关注中ScienceGCAM中的碳政策(碳价格)是研究低碳路径的重要一环,与碳价格可以是外生给定,也可以是基于气候目标内生形成的,外生给定的例子GCAM给出的是carbon_tax_0.xml文件,内生形成的例子则是policy_target_1p9_spa1.xml等。GCAM中除了CO2 还有其他多种温室气体,如CO, HFC等,中国的碳中和政策是CO2中和,欧洲一些国家则是温室气体中和,这就涉及到GCAM中不同的定义了,下面我解析一下,碳市场在GCAM中是如果定义的,我们又应该
2021-07-02 12:29:14 1064 5
原创 python线性规划:用CVXPY构建收入最大化模型Revenue Maximization
点赞发Nature关注中Science之前的一些工作都是用pulp构建的基于非径向距离NDDF的Malmquist-Luenberger 指数零和数据包络分析考虑非期望产出的非径向距离函数NDDF但是pulp库的问题是只能坐线性编程,而无法求解非线性问题。而CVXPY则可以。所以我目前在尝试从pulp转到CVXPY 以下是一个用CVXPY编写的收入最大化模型,Fare et al曾证明过成本最大化模型是产出距离函数的对偶函数。import cvxpy as cpimport numpy as
2021-06-15 15:53:12 961 2
原创 能源系统建模:python读取GCAM的xml数据文件
点赞发Nature关注中ScienceGCAM通过gcamdata由csv文件生成xml文件,在csv文件中的寿命曲线,成本曲线等会形成xml文件中的每个时间的具体数据。有时需要将这些具体的数据导出,研究stranded asset, material flow等问题。下面是一个比较普适的读取xml文件中数据的代码(以读取交通部门乘用车能源强度为例UCD_trn_COR.xml,利用的xml包):from pandas import ExcelWriterimport numpy as npi
2021-06-15 14:16:50 813 3
原创 python Dat Vis: Plotly绘制sankey diagram桑基图
点赞发Nature关注中Sciencesankey图一般用于描绘agent间的物质、能量流动,在综合评估模型IAM、投入产出模型IO相关的论文中比较常见。以下是一个使用plotly程序包绘制能量流动的代码import osimport pandas as pdimport plotly.express as pximport plotly.graph_objects as gocolor_node_prod = px.colors.sequential.YlGn # define the c
2021-05-24 10:38:54 995
原创 python DEA: 基于非径向距离NDDF的Malmquist-Luenberger 指数及其分解
点赞发Nature关注中ScienceMalmquist-Lenberger指数(ML指数)是距离函数与DEA计算中常用的指数,ML指数可以进一步分解为技术进步technological progress和效率改善effeciency change. 技术进步常被当做增长模型中的全要素生产率,用到许多计量经济研究中,探讨影响技术进步的环境变量。这里我分享一个考虑非期望产出下的NDDF方法计算ML指数。该ML指数为global ML(区别于sequential ML)import numpy as
2021-05-11 12:58:55 4530 9
原创 python LCA: Brightway2 环境影响蒙特卡洛Monte Carlo分析
点赞发Nature关注中ScienceEcoinvent等生命周期数据库都会给不同的过程(process)设置一个不确定性分布,以更好地模拟真实过程中地不确定性。我们可以利用brightway2这个python包做一个不同过程地蒙特卡洛分析。下面的代码实现了对多个影响因子,如GWP (CO2 emission), PMFP (PM emission), EDP (oil equivalent consumption)的Monte Carlo不确定性分析。import brightway2 as bw
2021-04-26 15:07:23 1837 4
原创 能源系统建模:GCAM模拟SSP-RCP路径目标下的能源系统
点赞发Nature关注中ScienceGCAM安装*本文使用 GCAM5.2Shared-Socioeconomic Pathway-Rrepresentative Concentration Pathway (SSP-RCP) 组合是模拟未来气候变化情境下社会经济系统演变的普遍假设。不同的SSP假设了未来人口,GDP,能源需求的变化,作为GCAM之类综合评估模型(IAM)的外生变量。RCP也是IAM的外生变量,决定了模拟的气候变化目标。GCAM提供了非常方便的途径来实现不同SSP-RCP组合的模拟
2021-04-16 16:21:26 5302 47
原创 能源系统建模:Linux系统编译global change analysis model (GCAM)
GCAM模型太大,在PC上没法正常跑,需要到超算中心上计算,超算是Linux系统,需要把GCAM 再编译成Linux版本才能跑。我花了一个星期,终于把他搞通了,下面是我整个步骤,可能遇到的报错也都贴在这里了,希望对大家有帮助。有问题可以下方评论留言,我看看能不能帮忙解决Linux compiling GCAMhttp://jgcri.github.io/gcam-doc/gcam-build.html#43-building-with-visual-studio...
2021-03-26 09:54:27 1314
原创 RuntimeError: Cannot clone object <tensorflow.python.keras.wrappers.scikit_learn.KerasClassifier obj
点赞发Nature关注中Science用sklearn.GridSearchCV时,def create_model( i=0, # ith country neurons_First=30, # neurons in the first layer neurons_Second=30, # neurons in the second layer layer=1, # number of layers dropout_rate=0.2, # dropo
2021-03-15 15:11:39 4096 12
原创 python Deep learning: 用tensorflow keras快速生成时间序列数据
点赞发Nature关注中Science做时间序列预测的时候,一般需要先对数据进行时间序列处理,形成以一定数据结构之后才能输入深度学习模型进行预测。tensorflow.keras提供了十分方便的预处理包TimeseriesGenerator:from keras.preprocessing.sequence import TimeseriesGenerator# 对于任一的时间序列数据 dataframedata_processed = TimeseriesGenerator(
2021-03-10 18:36:11 410
原创 R basics: R语言修改默认显示语言
点赞发Nature关注中Science系统默认语言是中文,所以R studio中显示的报错语言也是中文,这导致很难直接用英文搜索解决方案,因此想把R studio默认显示语言改成英文Sys.getlocale() #显示系统语言Sys.setenv(LANG="en") # 更换默认语言...
2021-02-27 13:11:00 15756 7
原创 能源系统建模:安装和使用gcamdata_R package构建GCAM模型输入文件系统
点赞发Nature关注中ScienceGCAM系统大量的输入数据(xml文件)是通过gcamdata_R程序包将inst/extdata 中的csv 文件转换而来的。下面简单讲一下gcamdata_R的安装和转换。原文链接在这里安装github desktop客户端从这里下载。安装Rstudio从这里下载 (要求Rstudio 3.2以上)安装依赖程序包install.packages(c("devtools", "dplyr", "tidyr", "readr", "testthat"
2021-02-02 17:27:05 2121 8
原创 python Dat Vis: Matplotlib设置x/y轴数据标签字体、大小、方向
点赞发Nature关注中Scienceimport matplotlib.pyplot as plt#设置x轴plt.xticks(fontname="Calibri",fontsize=20,rotation=45)#设置y轴plt.xticks(fontname="Calibri",fontsize=20,rotation=45)'''arg 'fontname'可选项可查看以下链接http://jonathansoma.com/lede/data-studio/matplotlib
2021-01-11 10:15:59 4606
原创 能源系统建模:GCAM (The Global Change Analysis Model) 的安装
点赞发Nature关注中Science上一篇简单聊聊了GCAM的python API,实际上,pygcam是一个比较primitive的GCAM API。GCAM的主流应用还是基于它C++打包好的源码直接应用。这篇博客简单聊一聊GCAM的安装和快速上手。更详细的资料可以从GCAM官方文档获取。InstallationGCAM是一个打包好的程序可以从Official Git Repo获取不同版本。GCAM AR5的报告是基于GCAM4.0版本的,目前GCAM已经迭代到了GCAM5.0版本,相应的数据也
2020-12-18 10:35:21 7169 36
原创 conda虚拟环境下ipython或jupyter notebook无法正确调用python
求点赞~用conda创建虚拟环境后,激活环境后无法用pip安装python包,输入where python发现python.exe仍是..\Anaconda\python.exe输入where pip结果则是..\Anaconda3\Scripts\pip.exe原因是还未在虚拟环境中安装ipython,这也会导致后续使用jupyter出现问题。解决方法conda install -c anaconda ipython后续如果要使用jupyter,还需要conda install -
2020-12-02 10:50:36 1295
原创 python 能源系统建模: pygcam (The Global Change Analysis Model) 的安装
前段时间试用了一下MESSAGEix,MESSAGE是IIASA开发的全球能源能源系统建模软件,IIASA提交给IPCC的SSP报告中用的便是基于MESSAGE建模的。MESSAGEix是纯python包,用起来比较简便,但是遗憾的是,MESSAGEix并不提供一个基础的模型供初学者利用。所以,近期,我便转向了GCAM,一个由University of Maryland开发的全球能源系统建模工具。这里主要介绍利用pygcam,一个以C++为内核的python 应用......
2020-12-01 13:27:44 2380 6
原创 python 能源系统建模:message-ix Integrated assessment model的安装
点赞发Nature关注中Sciencemessage-ix是IIASA做的全球能源系统综合评估模型的python包,19年发布,提供了很方面的python API做————————我是仁荷大学的经管博士生(我的google scholar, 我的Github),关注能源转型过程中的环境、经济问题。专注于分享利用python科研的技巧,欢迎一起交流、学习、合作。关于我的博客内容、其他相关的研究问题,有问题可以评论、私信我~...
2020-11-24 13:42:35 2375 8
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人