Python
happy5205205
感兴趣可以加,多多交流。
展开
-
dataframe减少内存reduce_mem_usage
"""load data(reduce memory usage)https://www.kaggle.com/gemartin/load-data-reduce-memory-usage"""import pandas as pdimport numpy as npdef reduce_mem_usage(df): """ iterate through all the columns of a dataframe and modify the data type原创 2021-12-14 19:30:50 · 416 阅读 · 0 评论 -
python dataframe字符串与日期格式之间的相互转换
from datetime import datetimeimport panda as pddf = pd.DataFrame([['1','2020-08-16'],['2','2020-08-15']],columns=['a','b'])# 方法一 直接使用pd.to_datetime函数实现df['c'] = pd.to_datetime(df['b'])# 方法二 strptime 字符串转成时间df['d']= df['b'].apply(lambda x: x.strptime原创 2020-08-16 16:33:25 · 13998 阅读 · 0 评论 -
python 字典合并或列表合并的多种和方法
https://www.cnblogs.com/chaihy/p/7243143.html原创 2020-08-13 23:21:03 · 411 阅读 · 0 评论 -
将json转换成Dataframe,Dataframe某一列是字典转成DataFrame
import pandas as pddef score_data(x): try: return(pd.Series(json.loads(x)['data'])) except: return np.nan原创 2020-07-13 23:06:06 · 1342 阅读 · 0 评论 -
python 字典与DataFrame之间的相互转换
# 字典转dataframef = {u'2012-06-08': 388, u'2012-06-09': 388, u'2012-06-10': 388, u'2012-06-11': 389, u'2012-06-12': 389, u'2012-06-13': 389,}fOut[12]: {'2012-06-08': 388, '2012-06-09': 388, '2012-06-10': 388, '2012-06-11': 389, '2012-06-12': 38原创 2020-05-14 19:11:36 · 1482 阅读 · 0 评论 -
Python中pandas dataframe删除一行或一列:drop函数
用法:DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False)参数说明:labels 就是要删除的行列的名字,用列表给定axis 默认为0,指删除行,因此删除columns时要指定axis=1;index 直接指定要删除的行columns 直接指定要删除的列inplace=False,默认该...原创 2020-03-26 19:25:40 · 3827 阅读 · 0 评论 -
Python将DataFrame的某一列作为index
df.set_index(['XXXX'], inplace=True)import pandas as pdcountry1 = pd.Series({'Name': '中国', 'Language': 'Chinese', 'Area': '9.597M km2', ...原创 2020-03-26 19:17:57 · 6416 阅读 · 1 评论 -
pandas 根据某一列排序(sort_values)
官方文档: https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.sort_values.htmldf.sort_values(by="XXXX" , ascending=False) by 指定列 ascending#coding=utf-8import pandas as pdimport num...原创 2020-03-26 17:49:45 · 36802 阅读 · 1 评论 -
python修改Dataframe列名的两种方法
首先新建一个Dataframeimport pandas as pddf = pd.DataFrame({'a':[1,2,3],'b':[1,2,3]})如下: a b0 1 11 2 22 3 31、修改列名a,b为A、B。df.columns = ['A','B']2、只修改列名a为Adf.rename(columns={'a':'A'})...原创 2020-03-26 17:29:04 · 25736 阅读 · 2 评论 -
pandas - groupby, agg分组统计
# -*- coding: utf-8 -*-""" 数据聚合与分组技术, 利用Python进行数据分析1. groupby;"""import pandas as pdimport numpy as np np.random.seed(1) """ 1. groupby, 按键拆分, 重组, 求和 """df = pd.DataFrame({ "key...转载 2020-03-26 13:34:31 · 961 阅读 · 0 评论 -
DataFrame 对每一行做 lambda 处理
import pandas as pdimport numpy as npdef ss(x): try: res = (x['score']/x['c']).max() return res except: return np.NANdef main(): df = pd.DataFrame([['A', 0, 4],...原创 2020-03-19 15:47:45 · 4133 阅读 · 0 评论 -
Pandas组内排序总结
import pandas as pddf = pd.DataFrame([['A',1],['A',3],['A',2],['B',5],['B',9]], columns = ['name','score'])总体而言有三种思路:先排序,后分组先排序,后分组这种方法,基于一个前提,即分组不会改变组内的相对顺序。这种方法,首先采用sort_values的方法,对整个df进行排序,然后...原创 2020-03-13 17:57:01 · 1150 阅读 · 0 评论 -
科学计算库NumPy
1、 创建Arraymy_list = [1, 2, 3]x = np.array(my_list)print('列表:', my_list)print('Array: ', x)print(np.array([1, 2, 3]) - np.array([4, 5, 6]))m = np.array([[1, 2, 3], [4, 5, 6]])print(m)print('...原创 2018-06-28 10:40:45 · 180 阅读 · 0 评论 -
Pandas数据清洗
1、处理缺失数据import pandas as pdlog_data = pd.read_csv('log.csv')log_data判断数据缺失print(log_data.isnull())print(log_data['paused'].isnull())# 取出volume不为空的数据print(log_data[log_data['volume'].notnull()...原创 2018-06-30 11:44:07 · 1420 阅读 · 0 评论 -
Pandas数据合并及分组
1、数据合并import pandas as pdstaff_df = pd.DataFrame([{'姓名': '张三', '部门': '研发部'}, {'姓名': '李四', '部门': '财务部'}, {'姓名': '赵六', '部门': '市场部'}])student_df = pd.D...原创 2018-07-01 18:07:42 · 572 阅读 · 0 评论 -
Pandas透视表
cars.csv文件链接: https://pan.baidu.com/s/198ru9Tv_9Y_5RzHo56IAUA 密码: g3yaimport pandas as pdimport numpy as npcars_df = pd.read_csv('cars.csv')print(cars_df.head())# 我们想要比较不同年份的不同厂商的车,在电池方面的不同prin...原创 2018-07-01 18:16:14 · 259 阅读 · 0 评论 -
Seaborn数据可视化
import matplotlibimport seaborn as snsimport numpy as npanscombe_df = sns.load_dataset('anscombe')print(anscombe_df)print(anscombe_df.groupby('dataset').agg([np.mean, np.var]))sns.set(style="tic...原创 2018-07-01 18:27:14 · 197 阅读 · 0 评论 -
Matplotlib基本图表的绘制及应用场景
1、 Matplotlib架构# Backendimport matplotlib as mplprint(mpl.get_backend())2、 基本图表的绘制使用matplotlib.pyplot直接绘制import matplotlib.pyplot as pltplt.plot(3, 2)plt.plot(3, 2, '*')plt.show()使用scrip...原创 2018-07-01 18:41:34 · 965 阅读 · 0 评论 -
Pandas及Seaborn绘图
import pandas as pdimport numpy as npimport matplotlib.pyplot as plt1、Pandas绘图# 可用的绘图样式 plt.style.available# 设置绘图样式plt.style.use('seaborn-colorblind')DataFrame绘图np.random.seed(100)df = ...原创 2018-07-01 18:56:30 · 531 阅读 · 0 评论 -
数据分析常用图表的绘制
import matplotlib.pyplot as pltimport numpy as np1、Subplotsplt.figure()# 表示1行2列,现在在第一个子图上进行操作plt.subplot(1, 2, 1)linear_data = np.arange(1, 9)plt.plot(linear_data, '-o')exponential_data = li...原创 2018-07-01 19:06:03 · 909 阅读 · 0 评论 -
Python常用的可视化工具
import pandas as pdimport numpy as npimport matplotlib.pyplot as plt交互式图例import mpld3from mpld3 import pluginsnp.random.seed(100)df = pd.DataFrame({'A': np.random.randn(365).cumsum(0), ...原创 2018-07-01 19:09:42 · 1584 阅读 · 0 评论 -
机器学习之集成学习
数据链接:https://pan.baidu.com/s/1yW6gye5rJQ-Rn_iKlKUm1g 密码:ejkiimport numpy as npimport matplotlib.pyplot as pltimport pandas as pdimport seaborn as snsfrom sklearn.model_selection import train_tes...原创 2018-07-02 15:50:23 · 256 阅读 · 0 评论 -
数据分析中常用的Python技巧
1. 条件表达式import math# 普通写法def get_log(x): if x > 0: y = math.log(x) else: y = float('nan') return yimport math# 使用条件表达式x = 5log_val1 = get_log(x)log_val2 = math.log(x) if x...原创 2018-06-27 14:16:22 · 183 阅读 · 0 评论 -
Pandas基本数据对象及操作
1、Series创建Seriesimport pandas as pdcountries = ['中国', '美国', '澳大利亚']countries_s = pd.Series(countries)print(type(countries_s))print(countries_s)numbers = [4, 5, 6]print(pd.Series(numbers))...原创 2018-06-29 12:58:25 · 275 阅读 · 0 评论