iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python有哪些基础的使用技巧
  • 695
分享到

Python有哪些基础的使用技巧

2023-06-16 22:06:52 695人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容介绍了“python有哪些基础的使用技巧”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. read_csv每个人都知道这个命令。但

本篇内容介绍了“python有哪些基础的使用技巧”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1. read_csv

每个人都知道这个命令。但如果你要读取很大的数据,尝试添加这个参数:nrows =  5,以便在实际加载整个表之前仅读取表的一小部分。然后你可以通过选择错误的分隔符来避免错误(它不一定总是以逗号分隔)。

(或者,你可以在linux中使用'head'命令来检查任何文本文件中的前5行,例如:head -c 5 data.txt)

然后,你可以使用df.columns.tolist()来提取列表中的所有列,然后添加usecols =  ['c1','c2',...]参数以加载所需的列。此外,如果你知道几个特定列的数据类型,则可以添加参数dtype =  {'c1':str,'c2':int,...},以便数据加载得更快。此参数还有另一个优点,如果你有一个同时包含字符串和数字的列,那么将其类型声明为字符串是一个好选择,这样就可以在尝试使用此列作为键去合并表时不会出错。

2. select_dtypes

如果必须在Python中进行数据预处理,那么这个命令可以节约一些时间。读取表后,每列的默认数据类型可以是bool,int64,float64,object,cateGory,timedelta64或datetime64。你可以先查看

df.dtypes.value_counts()

命令分发的结果以了解数据帧的所有可能数据类型,然后执行

df.select_dtypes(include = ['float64','int64'])

选择仅具有数字特征的子数据帧。

3. Copy

这是一个重要的命令。如果执行以下命令:

import pandas as pd df1 = pd.DataFrame({ ‘a’:[0,0,0], ‘b’: [1,1,1]}) df2 = df1 df2[‘a’] = df2[‘a’] + 1 df1.head()

你会发现df1已经改变了。这是因为df2 =  df1没有复制df1的值并将其分配给df2,而是设置指向df1的指针。因此,df2的任何变化都会导致df1发生变化 要解决这个问题,你可以:

df2   = df1.copy() br

或者

from copy import deepcopy df2 = deepcopy(df1)

4. Map

这是一个可以进行简单数据转换的命令。首先定义一个字典,其中'keys'是旧值,'values'是新值。

level_map = {1: ‘high’, 2: ‘medium’, 3: ‘low’} df[‘c_level’] = df[‘c’].map(level_map)

举几个例子:True,False为1,0(用于建模); 定义水平; 用户定义的词法编码。

5. apply or not apply?

如果我们想创建一个新的列,并将其他列作为输入,那么apply函数有时非常有用。

def rule(x, y):     if x == ‘high’ and y > 10:          return 1     else:          return 0 df = pd.DataFrame({ 'c1':[ 'high' ,'high', 'low', 'low'], 'c2': [0, 23, 17, 4]}) df['new'] = df.apply(lambda x: rule(x['c1'], x['c2']), axis =  1) df.head()

在上面的代码中,我们定义了一个带有两个输入变量的函数,并使用apply函数将其应用于列'c1'和'c2'。

但“apply函数”的问题是它有时太慢了。 如果你想计算两列“c1”和“c2”的***值,你可以:

df[‘maximum’] = df.apply(lambda x: max(x[‘c1’], x[‘c2’]), axis = 1)

但你会发现它比这个命令慢得多:

df[‘maximum’] = df[[‘c1’,’c2']].max(axis =1)

注意:如果可以使用其他内置函数完成相同的工作(它们通常更快),请不要使用apply。例如,如果要将列'c'舍入为整数,请执行round(df  ['c'],0)而非使用apply函数:

df.apply(lambda x: round(x['c'], 0), axis = 1)

6. value counts

这是一个检查值分布的命令。例如,如果你想检查“c”列中每个值的可能值和频率,可以执行以下操作

df[‘c’].value_counts()

它有一些有用的技巧/参数:

A. nORMalize = True:如果你要检查频率而不是计数。 B. dropna = False:如果你要统计数据中包含的缺失值。 C. df['c'].value_counts().reset_index():  如果你想将stats表转换成pandas数据帧并进行操作。 D. df['c'].value_counts().reset_index().sort_values(by='index') : 显示按值而不是按计数排序的统计数据。

7. 缺失值的数量

构建模型时,你可能希望排除具有很多缺失值或全是缺失值的行。你可以使用.isnull()和.sum()来计算指定列中缺失值的数量。

import pandas as pd import numpy as np df = pd.DataFrame({ ‘id’: [1,2,3], ‘c1’:[0,0,np.nan], ‘c2’: [np.nan,1,1]}) dfdf = df[[‘id’, ‘c1’, ‘c2’]] df[‘num_nulls’] = df[[‘c1’, ‘c2’]].isnull().sum(axis=1) df.head()

8. 选择具有特定ID的行

sql中,我们可以使用SELECT * FROM ... WHERE  ID('A001','C022',...)来获取具有特定ID的记录。如果想用Pandas做同样的事情,你可以

dfdf_filter = df[‘ID’].isin([‘A001’,‘C022’,...]) df[df_filter]

9. Percentile groups

你有一个数字列,并希望将该列中的值分类为组,例如将列的前5%,分为组1,前5-20%分为组2,前20%-50%分为组3,***50%分为组4。当然,你可以用pandas.cut来做,但这里提供另一个选择:

import numpy as np cut_points = [np.percentile(df[&lsquo;c&rsquo;], i) for i in [50, 80, 95]] df[&lsquo;group&rsquo;] = 1 for i in range(3):     df[&lsquo;group&rsquo;] = df[&lsquo;group&rsquo;] + (df[&lsquo;c&rsquo;] < cut_points[i]) # or <= cut_points[i]

这个指令使计算机运行的非常快(没有使用应用功能)。

10. to_csv

这也是每个人都会使用的命令。这里指出两个技巧。 ***个是

print(df[:5].to_csv())

你可以使用此命令准确地打印出写入文件的前五行数据。

另一个技巧是处理混合在一起的整数和缺失值。如果列同时包含缺失值和整数,则数据类型仍将是float而不是int。导出表时,可以添加float_format  ='%。0f'将所有浮点数舍入为整数。如果只想要所有列的整数输出,请使用此技巧,你将摆脱所有令人苦恼的'.0'。

“Python有哪些基础的使用技巧”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Python有哪些基础的使用技巧

本文链接: https://www.lsjlt.com/news/285495.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python有哪些基础使用技巧
    这篇文章主要讲解了“Python有哪些基础使用技巧”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python有哪些基础使用技巧”吧!>>> some_list&n...
    99+
    2023-06-16
  • Python有哪些基础的使用技巧
    本篇内容介绍了“Python有哪些基础的使用技巧”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. read_csv每个人都知道这个命令。但...
    99+
    2023-06-16
  • 使用Python Pip的技巧有哪些
    这篇文章主要介绍了使用Python Pip的技巧有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇使用Python Pip的技巧有哪些文章都会有所收获,下面我们一起来看看吧。1.安装 pip从 Python ...
    99+
    2023-07-06
  • Python有哪些有趣的使用技巧
    本篇内容介绍了“Python有哪些有趣的使用技巧”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一 . print 打印带有颜色的信息大家知道...
    99+
    2023-06-02
  • ASP基础中Global.asa文件技巧有哪些
    这篇文章跟大家分析一下“ASP基础中Global.asa文件技巧有哪些”。内容详细易懂,对“ASP基础中Global.asa文件技巧有哪些”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入...
    99+
    2023-06-17
  • Python基础语法的使用有哪些
    这篇文章主要讲解了“Python基础语法的使用有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python基础语法的使用有哪些”吧!数值数值包括整型和浮点型,分别对应整数和浮点数,后者精...
    99+
    2023-06-02
  • 有哪些有用的Python技巧
    本篇内容介绍了“有哪些有用的Python技巧”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 函数连续调用def add(...
    99+
    2023-06-16
  • Golang的基础知识和高级技巧有哪些
    这篇“Golang的基础知识和高级技巧有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Golang的基础知识和高级技巧有...
    99+
    2023-07-05
  • Python经典的使用技巧有哪些
    这篇文章主要介绍了Python经典的使用技巧有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python经典的使用技巧有哪些文章都会有所收获,下面我们一起来看看吧。如何测量程序的执行时间关于 Python ...
    99+
    2023-06-29
  • Python字典使用技巧有哪些
    今天小编给大家分享一下Python字典使用技巧有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。字典(Dictionary...
    99+
    2023-06-29
  • Python的技巧有哪些
    本篇内容主要讲解“Python的技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python的技巧有哪些”吧!1、对输入的字符串“消毒”对用户输入的内容“消毒”,这问题几乎适用于你编写的...
    99+
    2023-06-15
  • Python有哪些好用的技巧
    本篇内容主要讲解“Python有哪些好用的技巧”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python有哪些好用的技巧”吧!import模块在Python经常使用import声明,以使用其他模...
    99+
    2023-06-02
  • 有哪些好用的Python技巧
    今天小编给大家分享一下有哪些好用的Python技巧的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。技巧总结1、处理用户的多个输...
    99+
    2023-07-06
  • Python实用的技巧有哪些
    这篇文章主要讲解了“Python实用的技巧有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python实用的技巧有哪些”吧!1. 列表推导式有人或许以前听说过这些。Python中的一种编...
    99+
    2023-06-16
  • 好用的Python技巧有哪些
    这篇文章主要讲解了“好用的Python技巧有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“好用的Python技巧有哪些”吧!1、对输入的字符串“消毒”对用户输入的内容“消毒”,这问题几乎...
    99+
    2023-06-16
  • 有哪些实用的Python技巧
    这篇文章主要讲解了“有哪些实用的Python技巧”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“有哪些实用的Python技巧”吧!1. 重复元素判定以下方法可以检查给定列表是不是存在重复元素,...
    99+
    2023-06-16
  • Python中经常使用的技巧有哪些
    本篇内容主要讲解“Python中经常使用的技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中经常使用的技巧有哪些”吧!1. 反转字符串虽然看似是很基础的操作,但是用char循...
    99+
    2023-06-27
  • 实用的Python技巧有哪些
    这篇文章主要介绍“实用的Python技巧有哪些”,在日常操作中,相信很多人在实用的Python技巧有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”实用的Python技巧有哪些”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-02
  • Python的实用技巧有哪些
    本篇内容介绍了“Python的实用技巧有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!ALL OR ANYPython之所以成为这么一门...
    99+
    2023-06-02
  • 使用Vue.js的技巧有哪些
    小编给大家分享一下使用Vue.js的技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!第一招:化繁为简的Watchers场...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作