fayongo
个人专栏

最新文章

Pandas压缩保存DataFrame到csv(节省磁盘空间)

直接把一个大的DataFrame保存到磁盘是很占空间的。随机生成一个大的DataFrame:df = pd.DataFrame(pd.np.random.randn(50000,300))把它保存到csvdf.to_csv('random_data.csv', index=False)保存完后,csv的文件大小大概为300M,这是非常占用磁盘空间。pandas压缩保存csv一般做法是设置compr

Python安全地创建多层嵌套目录

Python的pathlib包里的Path类提供了.mkdir()方法,我们使用它就可以安全地创建多层嵌套的目录。1、从pathlib导入Path类from pathlib import Path2、创建一个Path对象,并且以它将要创建的目录作为构造参数p = Path("/nested/directory")3、调用.mkdir()方法创建目录p.mkdir()如果目录是不存在的,这样就可以了

Pandas修改dataframe的index

1、仅修改index名称直接对dataframe的index赋值新的index名即可df.index = newindex示例:df=pd.DataFrame({'c1':[1,2,3],'c2':[4,5,6],'c3':[7,8,9]},columns=['c1','c2','c3'],index=['1','2','3'])print(df): c1 c2 c31 1 4 72 2

pandas报错:AttributeError: 'Series' object has no attribute 'split'

pandas对dataframe中的某一列使用split做字符串切割:words = df['col'].split()报错:AttributeError: 'Series' object has no attribute 'split'原因是df['col']返回的是一个Series对象,需要先把Series对象转换为字符串:pandas.Series.str.splitwords = df['

Pandas统计dataframe列中为NaN的行数

这分为两种情况:缺少值NaN和字符串NaN。缺少值NaNdf = pd.DataFrame({'value':[np.nan, np.nan, 1, 5, 7]})print (df) value0 NaN1 NaN2 1.03 5.04 7.0count = df['value'].isna().sum()#或者 count = df['valu

Pandas dataframe重命名列名

Pandas重命名有三种方法:1、使用columns重命名>>> df = pd.DataFrame({'$a':[1,2], '$b': [10,20]}) >>> df.columns = ['a', 'b'] >>> df  &n

Pandas dataframe找出列中重复值的索引

这里演示找出Panda dataframe 列里重复值的索引,其中索引从0开始。dataframe数据如下:id   | name |   1    |   a  | 2    |

一些有用的pandas代码片段

# 列出dataframe指定列的唯一值 df['Column Name'].unique() # 把列的数据类型转换为数字。如果有非数字值,则会出错。 pd.to_numeric(df['Column Name']) # 把列的数据类型转换为数字,如果非数字值,则会转换为NaN pd.to_numeric(df['Column Na

Pandas对应SQL的in和not in实现

在Pandas提供了pd.isin(),使用它可以实现SQL的in和not in。not in 对应于:~a.isin(b) 示例:假如有以下dataframe数据,它包含了列data如下:>>> df   data 0   a 1   b 2 &nb