pandas常用操作二——关于列

参考链接:http://pandas.pydata.org/pandas-docs/stable/tutorials.html

  • df_data = pd.read_csv(path + '\\' + deletefile, sep=',')#以分隔符逗号读取数据

  • data_type = df_data.dtypes #各个列数据类型

  • data_bug_type = df_data.bug.dtypes #bug列数据类型
  •  
  • bug_value = df_data.xs('bug', axis=1) #选择某列('bug')
  • df_data.[['Rev', 'test']]#选择某两列
  • project = df_data['project'] #选择某列,返回Series,如果列索引不存在,会报错
  • Sorted = df.sort_values(['Births'], ascending=False) # 针对数据类型为int64的某列求最大值:对其进行排序,且由大到小 然后,Sorted.head(1) # 取第一个值(最大值)
  • df_data['Births'].max() #求某列的最大值(针对数据类型为int64的某列)
  • # Lets add a couple of columns
    • df_data['test'] = 3
    • df_data['col'] = df_data['Rev'] #添加一列col,和已有Rev列相同,添加到test后面
  • bug_only = df_data[['bug']].copy() #创建一个DF,只有bug列,即复制bug列
  • bug_only.loc[:, 'Bug'] = project #文件末列添加新的列
  • df_data.insert(0, 'project', 'lucene') #在第1列插入名为‘project’,内容为lucene的列(内容这样写不知是否正确)
  • bug = df_data.bug #选择某列
  • stats = pd.concat(['project, bug], axis=1) # 将列version和列bug合并成一个新的DataFame
    • combined = pd.concat([ALL,BHAG], axis=0) #合并
    • combined = combined.sort_index(axis=0) #按行索引排序
    • combined.groupby(lambda x: x.year).max() #按年份分组,并求数据的最大值
  • stats.plot(kind='bar') #两个图画在同一个图中
  • stats.plot(kind='bar', subplots=True, figsize=(15, 10)) #两个图上下分开显示
  • df_data.reset_index().groupby(['State','StatusDate']).sum() #将某两列作为索引重新编号,并按索引求和对应的数据,reset_index函数将把索引StatusDate带回dataframe中的一个列。???
  • df_data['Customer'].groupby(df_data.index.get_level_values(1)).sum()#将df_data['Customer']按照df_data的多个行索引的第二个索引的值分组,并将索引相同的对应数据求和。
  • columns_name = df_data.columns #列索引
  • df_data.drop(axis=1, ['name']) #删除某列
  • del df_data['Status']#删除某列
  • df_data.dropna(axis=1, how='any') #只要列中有null值,即删除
  • df_data.bug.apply(lambda x: x.upper()) #选择某列(bug)中所有的大写字母
  • df_data[df_data.bug!=0] = 1 #将某列(bug)中数值不为0的数据修改为1
  • is_lucene = df_data['project'].str.contains('lucene') #某列如果是str形式,可以判断列中是否包含某字符串,返回True和False。注意,如果该列名不存在,会报KeyError错误。
  • is_lucene.astype(float) #将True和False换成0和1表示。
  • is_lucene.astype(float).resample('M', how=np.mean) #找到每月(“M”)是lucene的概率,注意resample的用法(对常规时间序列数据重新采样),how=np.median是求中位数。
  • 参考链接:http://pandas.pydata.org/pandas-docs/stable/tutorials.html

    由于笔者也是初学者,希望记录分享,以便方便学习,如有错误,欢迎批评指正,谢谢!

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这篇笔记主要介绍了Pandas模块的基本操作和使用方法。PandasPython中一个用于数据分析和处理的常用库,提供了高效的数据结构和数据分析工具,是进行数据处理和数据挖掘的重要工具之一。 一、Pandas数据结构 Pandas主要有两种数据结构:Series和DataFrame。 1. Series Series是一种类似于一维数组的对象,由一组数据和一组与之相关的标签(即索引)组成。Series的创建方式如下: ```python import pandas as pd # 通过表创建Series s = pd.Series([1, 3, 5, np.nan, 6, 8]) # 通过字典创建Series s = pd.Series({'a': 1, 'b': 2, 'c': 3}) ``` 2. DataFrame DataFrame是一种维表格数据结构,由一组数据和一组行索引和索引组成。DataFrame的创建方式有很多种,最常用的是通过字典创建。例如: ```python import pandas as pd data = {'name': ['Tom', 'Jerry', 'Mike'], 'age': [18, 20, 22], 'gender': ['M', 'M', 'F']} df = pd.DataFrame(data) ``` Pandas的基本操作 1. 数据读取 Pandas可以读取多种格式的数据文件,如CSV、Excel、SQL等。常用的读取CSV文件的方式如下: ```python import pandas as pd df = pd.read_csv('data.csv') ``` 2. 数据预处理 数据预处理是数据挖掘中非常重要的一部分,Pandas提供了很多方便的函数和方法来进行数据清洗和转换。常用的数据预处理函数和方法有: - 处理缺失值 ```python # 判断是否存在缺失值 df.isnull() # 删除缺失值 df.dropna() # 填充缺失值 df.fillna(value) ``` - 处理重复值 ```python # 删除重复值 df.drop_duplicates() ``` - 数据转换 ```python # 数据类型转换 df.astype() # 数据替换 df.replace() ``` 3. 数据分析 Pandas提供了各种数据分析和处理的方法和函数,常用的包括: - 统计函数 ```python # 计算平均值 df.mean() # 计算标准差 df.std() # 计算最大值和最小值 df.max(), df.min() ``` - 排序 ```python # 按照某排序 df.sort_values(by='column_name') ``` - 数据聚合 ```python # 对某数据进行分组求和 df.groupby('column_name').sum() ``` 以上是Pandas模块的基础内容,还有很多高级用法和技巧需要进一步学习和掌握。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值