Finology 大数据金融

通过大数据以量化金融

启动Console

按图示方式进入命令行。

安装Jupyter扩展插件Nbextensions

1
2
pip install jupyter_contrib_nbextensions -i https://pypi.mirrors.ustc.edu.cn/simple
jupyter contrib nbextension install --user

安装代码格式化插件

1
conda install yapf

重启Jupyter notebook,进入首页后,可以看到Nbextensions标签已经有了。

选中HinterlandCode prettify复选框。

设置主题和字体

安装主题

1
pip install jupyterthemes

安装成功后可查看可用主题:

1
jt -l

设置主题

-t(主题) -f(字体) -fs(字体大小) -cellw(占屏比或宽度) -ofs(输出端的字号) -T(显示工具栏) -N(显示自己主机名)

1
jt -t monokai -f fira -fs 14 -cellw 94% -ofs 11 -dfs 11 -T -N

输出多行结果

1
2
3
4
5
6
7
8
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = 'all'

1 * 2
1 + 2

2
3

如何安装Anaconda及基本的使用请参考 macOS下Anaconda的安装及环境切换(Python2/Python3)

我在安装Anaconda的时候,软件自带的版本是Python3.6的,如果我现在需要使用Python2.7或者Python3.7,应该怎么操作呢?

如果我们在Anaconda Navigator控制台上做Create操作,环境是可以成功创建,但环境里面携带的包是非常少的。

所以可以参考如下方式进行Python版本修改。

1
conda create -n python37 python=3.7 anaconda

如果conda的版本比较旧的话,会出现如下提示:

1
2
3
4
5
6
7
==> WARNING: A newer version of conda exists. <==
current version: 4.6.2
latest version: 4.6.7

Please update conda by running

$ conda update -n base -c defaults conda

所以我们可以先执行命令

1
conda update -n base -c defaults conda

然后再执行conda create命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
conda create -n python37 python=3.7 anaconda
Collecting package metadata: done
Solving environment: done

## Package Plan ##

environment location: /Users/simon/anaconda3/envs/python37

added / updated specs:
- anaconda
- python=3.7


The following packages will be downloaded:

package | build
---------------------------|-----------------
mkl-2019.1 | 144 154.4 MB
------------------------------------------------------------
Total: 154.4 MB

The following NEW packages will be INSTALLED:

alabaster pkgs/main/osx-64::alabaster-0.7.12-py37_0
anaconda pkgs/main/osx-64::anaconda-2018.12-py37_0
...
...
Proceed ([y]/n)? y


Downloading and Extracting Packages
mkl-2019.1 | 154.4 MB | ###################################################################################################### | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use:
# > source activate python37
#
# To deactivate an active environment, use:
# > source deactivate
#

按照上面的提示,我们可以执行如下命令激活或失效某个python环境。

  • 激活
1
source activate python37
  • 失效
1
source deactivate

方便快速从不同的数据源(json, parquet, rdbms),经过混合处理(json join parquet)
再将处理结果以特定的格式(json, parquet)写回到指定的系统中(HDFS, S3)

spark.read.format(format)

format
built-in json, parquet jdbc, csv(2.x)
packages: 外部的非SPark内置 spark-packages.org


spark.write

操作parquet

ParquetApp

main

spark = SparkSession

df = spark.read.format(“parquet”).load(users.parquet”)
df.printSchema
df.select*

new_df.write.format(“json”).save(new_path)

默认处理parquet数据

spark-sql

create temporary view parquetTable
USING…
Options(
path: fsafsdfsafdsf
)

select * from parquettable

spark.read.format().option(path).load()

处理Hive

Df写入到hive
write.writeAsTable()

设置分区的数量,默认200

处理MySQL(jdbc)

0%