交互式数据分析和python笔记
1、安装conda 类似npm的n
https://www.jianshu.com/p/544a4c8a8186
1 2 3 4 | # 安装python 以及依赖 conda create -n joy python==3.10.10 # 激活环境 conda activate myenv |
2、安装交互式数据分析包streamlit
https://zhuanlan.zhihu.com/p/257074934
1 | streamlit run streamlitDemo.py |
注意安装依赖包,文件格式和语句,避免报错
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 | import streamlit as st import pandas as pd import numpy as np import matplotlib.pyplot as plt import plotly.figure_factory as ff # st.title("streamlit demo") @st .cache def load_data(path): df = pd.read_csv(path) df.columns = df.columns. str .lower() # df['date'] = pd.to_datetime(df['transaction_date']).dt.date # df['price'] = df['price'].str.replace(",",'').astype(float) return df df = load_data( "warningMsgMgt2.csv" ) st.table(df.head( 5 )) ##### st.title( '使用streamlit的api画图' ) sub_df = df[[ 'type' , 'time' ]] sub_df = sub_df.groupby( 'time' ).agg( sum ) st.line_chart(sub_df[ "type" ]) ##### st.title( '使用plotly的api画图' ) fig = ff.create_distplot([sub_df[ 'type' ]], group_labels = [ 'time' ], bin_size = 2500 ) st.plotly_chart(fig, use_container_width = True ) |
更多好玩的例子
https://share.streamlit.io/redirect
https://docs.streamlit.io/ 文档
1 | streamlit hello |
很早之前学python做的笔记
20200217 学习python的基础概念,print单行代码
20200218 安装python3,vscode写python,认识交互模式和命令模式(交互,一行一行执行,调试用,python shell ||命令,一次性执行.py文件,正式运行环境,vscode终端运行文件)
20200219 Python代码运行助手,在线编译
输入与输出,变量。注意更新后清空一下终端,否则容易报错
类型,转义符\ r'’简化 ;换行''' ……'''
变量,动态语言;= 赋值
20200220 字符串和编码,计算字符串长度 str();编码转换指定编码,一般用UTF-8转换
%s,字符串;%d 整数;%f 浮点数,%----%%转义
list like array,越看越觉得跟js类似了 []
tupel array ,不能修改,() 里面的元素用逗号分隔(一个元素也用逗号),tupel里面的list是可以改变的
20200221 条件判断 if elif (js 里面else if,最后的else 没有条件)
注意:if后面带:冒号;if 后面内容缩进
20200222 循环
for while
break continue 必须配合 if 使用
for in ,for 后面也要加冒号,循环操作缩进
dict (=js 的 map) 键值对, dict的key必须是不可变对象 d={'a':1,'b':2}
set (=js 有index的对象元素),重复元素会被自动过滤 s={1,2,3}
以上两者都不能放入list(可变元素),只能放入整数和字符串
add(key),remove(key)
对于不变对象来说,调用对象自身的任意方法,也不会改变该对象自身的内容。相反,这些方法会创建新的对象并返回,这样,就保证了不可变对象本身永远是不可变的。
键key不能用list,键值对的值能用list
20200223 函数
用from abstest import my_abs来导入my_abs()函数 跟react一样
自定义函数 def开头 =function
pass 空函数,做占位符
函数可以同时返回多个值,但其实就是一个tuple。
then 函数的参数
20200224 *nums表示把nums这个list的所有元素作为可变参数传进去
参数,*args是可变参数,args接收的是一个tuple, func(1, 2, 3),又可以先组装list或tuple,再通过*args传入:func(*(1, 2, 3));
**kw是关键字参数,kw接收的是一个dict, func(a=1, b=2),又可以先组装dict,再通过**kw传入:func(**{'a': 1, 'b': 2})
python 一定要注意缩进 ; = 是赋值,==是判断
20200225 递归 (循环)栈溢出 使用递归函数的优点是逻辑简单清晰,缺点是过深的调用会导致栈溢出(其他语言也是差不多)
20200226 切片(截取数列) 关于带空格字符串的切片?
L[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3。即索引0,1,2,正好是3个元素。
L[:10] L数列前十个数;L[:-10]L数列后十个数;L[10:20] 11-20个数; L[:10:2] 前10个数,每两个取一个(奇数或者偶数列);L[::5]所有数,每五个取一个;L[:]复制一个数列
20200227 迭代 for n in list
list变索引元素对;打印元素对
信息创造价值, 知识就是力量。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术