其实,NULL值在数据库中是一个很特殊且有趣的存在,下面我们一起来看看吧; 前言 在查询数据库时,如果你想知道一个列(例如:用户注册年限 USER_AGE)是否为 NULL,SQL 查询语句该怎么写呢...因为,在 SQL 中,NULL 表示“未知”。也就是说,NULL 值表示的是“未知”的值。 NULL = 未知; 在大多数数据库中,NULL 和空字符串是有区别的。...Oracle 比较特殊,两个值都使用 NULL 来表示,而其他大多数数据库会区分对待。 但只要记住 NULL 表示的是一个未知的值,那么在写 SQL 查询语句时就会得心应手。...接下来,NOT() 会继续解析上一个计算返回的结果。 当 NOT() 遇到 NULL,它会生成另一个 NULL。未知的相反面是另一个未知。...希望大家现在都清楚该怎么在 SQL 语句中处理 NULL 值了。
上面的代码行翻译为:对于每一行,如果“总部所在国家”是“中国”,则评估为Ture,否则为False。 为了更好地形象化这个思想,让我展示一下在Excel中它是什么样子。...看看下面的Excel屏幕截图,添加了一个新列,名为“是否中国”,还使用了一个简单的IF公式来评估一行是否“总部所在国家”为中国,该公式返回1或0。实际上,我正在检查每一行的值。...完成公式检查后,我可以筛选”是否中国”列,然后选择值为1的所有行。 图3 Python使用了一种类似的方法,让我们来看看布尔索引到底是什么。 图4 注意上面代码片段的底部——长度:500。...上面的代码行创建了一个列表,该列表的长度与数据框架本身相同,并用True或False填充。这基本上就是我们在Excel中所做的。...当你将这个布尔索引传递到df.loc[]中时,它将只返回有真值的行(即,从Excel筛选中选择1),值为False的行将被删除。
图1 复杂一点的方法就是,单击Excel左上角的“文件——选项”,在“Excel选项”对话框中,单击左侧的“加载项”选项卡,在右侧下方的“管理”下拉列表中选择“Excel加载项”,单击其右侧的“转到”按钮...所需的值只是加载项的路径及其名称,如下图3所示。 图3 选择了哪些加载宏 在注册表的另一个位置,Excel会记录选择了哪些加载项(在加载项对话框中检查)。...如何使用VBA来安装Excel加载宏 编写一些简单的代码来启用加载项,弹出的消息框如下图5所示。...(ThisWorkbook.FullName, False) oAddIn.Installed = True RemoveEmptyBooks 第一行代码确保在Excel中至少打开一个工作簿窗口。...如果单击“否”,则会弹出另一个对话框,询问用户是否希望继续询问有关安装加载项的问题,如下图8所示。 图8 如果单击“是”,代码会存储该响应值,因此不会再次打扰用户。
标签:Python与Excel协同 本文将探讨学习如何在Python中读取和导入Excel文件,将数据写入这些电子表格,并找到最好的软件包来做这些事。...电子表格数据的最佳实践 在开始用Python加载、读取和分析Excel数据之前,最好查看示例数据,并了解以下几点是否与计划使用的文件一致: 电子表格的第一行通常是为标题保留的,标题描述了每列数据所代表的内容...然而,把这作为第一步,会让事情变得更简单,并确保有一个良好的开端。 验证代码库目录是否与Python的工作目录相同。 在终端中工作时,可以首先导航到文件所在的目录,然后启动Python。...这将在提取单元格值方面提供很大的灵活性,而无需太多硬编码。让我们打印出第2列中包含值的行的值。如果那些特定的单元格是空的,那么只是获取None。...,即标题(cols)和行(txt); 4.接下来,有一个for循环,它将迭代数据并将所有值填充到文件中:对于从0到4的每个元素,都要逐行填充值;指定一个row元素,该元素在每次循环增量时都会转到下一行;
,显著提高操作速度,让你飞一般的感觉。...把A1:A10选中,鼠标放在四周,按SHIFT键拖 动到B列与C列之间,出现竖的I型虚线,放掉,该放手时就放手。...可以在A1输入 2013-1-1,然后点击【开始】选项卡,然后在【编辑】组中,找到【填充】,在出现的下拉列表中选择【序列】,序列产生在列,类型选择日期,日期单位 为工作日,步长值为1,终止值为2013-...10.处理错误值 使用VLOOKUP函数,如果查找值在查找范围中不存在,将出现#N/A错误,初学者看不懂,,最好是显示为“查找不到”或是显示为空,各位,看好 了,先复制,选择性粘贴,值,然后我用替换,将...如果你以上十项全中,那么别灰心,关注我,就可以从我发 布的信息中了解到有关OFFICE的许多内容!如果你以上十项全能,那么恭禧你,你已经达到了EXCEL中级水平,请一笑而过。
但与大多数在Excel中创建的模型不同,蒙特卡罗分析使用随机数来生成关键假设。 例如,如果你一个月的最佳销售量是120,而最坏的销售量是80,你将使用随机数在这些限制之间进行选择。...为了说明这一点,我复制了RAND函数并将其粘贴到一列中的10000个单元格中,然后将这些值分成10组大小相等区间,创建了一个直方图,显示一个值在每个区间中出现的次数。...那么,如何才能做到这一点呢?如何从正态分布中返回一个随机数?...用直方图检查结果 下面的两个图并不花哨,但它们讲述了在你创建Excel模型或预测时需要了解的事。 图4计算了上一个公式如何成功地从正态分布返回数字。...创建直方图 选择单元格区域F3:F11,单击功能区“插入”选项卡“图表”组中的“柱形图——簇状柱形图”,创建如下图5所示的图表。 图5 当然,你可以让这个图表更好看些,但这对于测试来说不是必需的。
标签:Python与Excel,pandas 在Excel中,我们可以通过先在单元格中编写公式,然后向下拖动列来创建计算列。在PowerQuery中,还可以添加“自定义列”并输入公式。...在Python中,我们创建计算列的方式与PQ中非常相似,创建一列,计算将应用于这整个列,而不是像Excel中的“下拉”方法那样逐行进行。要创建计算列,步骤一般是:先创建列,然后为其指定计算。...图1 在pandas中创建计算列的关键 如果有Excel和VBA的使用背景,那么一定很想遍历列中所有内容,这意味着我们在一个单元格中创建公式,然后向下拖动。然而,这不是Python的工作方式。...首先,我们需要知道该列中存储的数据类型,这可以通过检查列中的第一项来找到答案。 图4 很明显,该列包含的是字符串数据。 将该列转换为datetime对象,这是Python中日期和时间的标准数据类型。...处理数据框架中NAN或Null值 当单元格为空时,pandas将自动为其指定NAN值。我们需要首先考虑这些值,因为在大多数情况下,pandas不知道如何处理它们。
1.制作下拉列表 第1步:A列中的机构名称有很多是重复的,把这一列的值复制到表格空白处,然后删除重复值后,发现这一列的机构名称只有A、B、C共3家。...在Excel表空白的地方,写上A机构、B机构、C机构,用于后面制作下拉列表里的值(下图)。这样做的目的是防止重复值出现在下拉列表里。...image.png 第2步:选中需要创作下拉列表的地方,也就是表中的I5单元格,然后在Excel中点【数据】——【数据验证】,打开数据验证对话框。...但通常表格里的数据很多,有多行多列。如何让INDEX知道A机构,利率档是40%是在第1列,24期的费用是在第3列呢? 这时就要用到INDEX的王炸组合MATCH函数。...用法如下: image.png 在本案例中,如想要确定A机构,利率档是40%是在第一行,那么写出来的公式是: =MATCH(A2&B2,A2:A17&B2:B17,0) 这个公式表示,在A2:A17&
数据填报系统是企业收集分散的业务数据的一个重要渠道,与传统的Excel数据汇总相比,它具有自动化、效率高、数据可直接入库的特点。...(2)设置规则为“数据集字段”,然后选择主数据字段,例如下图中的“部门”。 这样,该列填写的内容都会与“部门”字段里的值进行对比。如果填写的内容不属于“部门”的值,就认为填写内容不合法。...当product和saler的值不存在,则插入一行数据,如图中最后一行所示;当product和saler的值已经存在,则更新这一行,如图中绿色行所示。...06 填报下拉框的联动 通常我们在做填报时,两个不同的填写项是相互关联的。例如当用户选择市场分布为中部时,在市场的下拉框中,就只能选择中部的省份,如下图所示。那么如何实现多个下拉框之间数据联动呢?...➤小妙招: (1)选中要被联动的列表头,在右侧“设置”pane中设置“编辑器”。以上图为例,“市场”下拉列表的可选项要根据“市场分布”的值的变化而变化。那么我们就要选中“市场”进行设置。
在CustomUI Editor中,单击“插入”并选择“Office 2007 Custom UI Part”。之所以选择这个选项,是使工作簿与Excel 2007及以后的版本兼容。...前面的文章中已经介绍过如何获取识别内置选项卡的idMso的文件。 组元素: ? 按钮元素: 这个idMso属性的值指定内置控件的名字,本例中,为拼写控件。 切换按钮元素: 删除线控件是一个切换按钮。...单击工具栏中的Validation按钮来检查是否有错误。 7. 保存并关闭文件。 8. 在Excel中打开该工作簿文件。 下图展示在功能区的“开始”选项卡出现了含两个内置控件的名为Fav的组。 ?...在Excel 2010-2019中,选择“文件 | 选项 | 加载项”,Excel选项对话框中显示加载项选项卡。 在Excel 2007中,选择Microsoft按钮|Excel选项|加载项。 2....从“管理”下拉控件中选择“Excel加载项”,单击“转到”。 3. 如果在可用的加载项列表中没有你的加载项,单击“浏览”按钮查找到你保存该加载项的文件夹中的文件。 4.
这是你将传递到函数中的信息。 函数体。这是定义函数功能的地方。通常,我会为我的函数编写代码,并首先使用现有的数据结构进行测试,然后将代码放入函数中。 返回值。这是你的函数在完成编写后将返回的内容。...在这里,我将研究如何用一行代码向函数添加测试。 在上面编写的 python 函数中,我返回了最常见的值……但是如果有多个返回值的情况怎么办?...assert 是一个内置在 python 中的方法,它帮助我们检查某些内容是否正确。如果是正确的,那么什么都不会发生。否则,我们的函数将停止运行并给出报错信息。...assert 语句检查最常用值的计数是否与第二个最常用值的计数不同。...我之所以把这个也包括进来,是为了鼓励你查找现有的库或模块(或 kaggle 脚本)来解决你的问题。如果有人已经编写了你所需的代码,并且该代码允许你使用,那么你可能应该这样做。
在设置用户窗体时所选择的值是缺省值,而在运行时所作的变化仅当用户窗体被装载时有效。 两个最重要的属性是Name属性和Value属性: 1.Name属性可用于指定某个控件。...当然,可以通过控件的索引号来指定控件,但这样会难于理解和调试,因此,使用名称更可取。 2.Value属性是实际输入或者输出的数据。在不同的控件中,该属性值稍有区别。...为了插入某对象的事件过程,可以在该对象上单击右键,在快捷菜单中选择“查看代码”,将会自动创建一个该控件标准的事件过程。...还有一个方法是,可以先进入用户窗体代码窗口,在代码窗口顶部的左侧的下拉列表中选择对象,在右侧的下拉列表中选择相应的事件。 用户窗体初始化 最重要的用户窗体事件是初始化(Initialize)事件。...当在VBE中使用代码窗口顶部的下拉菜单创建一个事件过程时,该过程会自动为它的所有参数设置合适的值。 一些参数是只读的,而另一些参数则可读写。
如果检查左下角的数值预览,会发现数据点的真实值是 2951.8819 ,而该列的格式显示为 2951.88。将其与原始值 2951.881907 进行比较,可以看出这个值已经被四舍五入到了四位小数。...这可以通过检查每个值的预览来,并确认到在 “Decimal” 列的每个单元格中看到的值与选择给定单元格时出现的值预览一致来证明这一点,如图 3-6 所示。...那么如何识别列中存在的错误? 如果使用的是 Power BI 或 Excel 365 ,将会注意到,在列的标题下有一条红色的短线,后面跟着条纹。这是一个视觉提示,表示该列中存在某种错误。...现在知道了原因,那么该如何解决这个问题呢? Power Query 的美妙之处在于,对于这个解决数据错误的问题,实际上有多种选择。...3.6 检查查询错误 由于现在已经解决了与数据源缺失有关的步骤级错误和 “Units Sold” 列中的值错误,那么现在将准备重新加载数据,具体做法如下所示。
与Excel的不同之处在于,所有这些都是通过编写Python代码实现的,而不是在Excel中用鼠标点击。...与Excel相比,在笔记本中显示Python代码可以更容易地查看正在发生的事情,而Excel公式隐藏在单元格值后面。Jupyter笔记本也很容易在本地和远程服务器上运行。...在Jupyter仪表板的右上角,单击New,然后从下拉列表中选择Python3(参见图2-2)。...单元格输出 如果单元格中的最后一行返回值,则Jupyter笔记本会在Out[]下自动打印该值。但是,当你使用print函数或出现异常时,它将直接打印在In单元格的下方,而不带Out[]标签。...要将单元格类型更改为Markdown,选择该单元格,然后在“单元格模式”下拉列表中选择Markdown(见图2-3)。在后面的表中会为你显示一个更改单元格模式的键盘快捷键。
如何保证Excel中的表格和图表复制到其他应用程序时外观不发生变化?...选中需要整理的数据区域,选择【开始】选项卡中的【条件格式】,在【突出显示单元格规则】中选择【重复值】,这样就能够快速把重复值进行高亮显示。...而且这样格式的单元格里面存储的值依然是数字,依然可以做运算! Excel中编辑过长文本 在Excel的单元格中编辑超长文本或者很长的公式的时候,编辑界面只能显示在一行会让使用者很不舒服。...对比Excel中的两列数据 在Excel中经常会遇到对比两列数据异同的问题,即两列数据,有的相同,有的不同。如何快速定位那些不同的项目呢?...在Excel表格中,选中需要对比的两列,然后选择【开始】选项卡中的【查找和选择】下拉菜单中【定位】,在弹出的窗口选择【定位条件】,在接下来的窗口中选择【行内容差异单元格】,这样,所有同行存在差异的单元格都被选中
文末有福利 最近,孩子在万门大学上学习了Excel,拿了几道题考考我。...Excel 2003及以下版本的最大行数为65535行,最大列数仅有256列,在Excel 2007及以上版本最大行数已经升级到1048576行,16384列,能够满足大多数业务的需求。...Office 2013中,兼容性视图检查功能藏于"文件" -> 信息 -> 检查工作簿 -> 检查问题 -> 检查兼容性中。 3....两层的下拉选择项 在一个单元格内下拉选择省份,在另外一个单元格里再选择这个省的城市,实现起来并不容易,除了用到数据验证,还要用到表格区域命名,外加一个INDIRECT()函数,挺有难度的一个任务。...这种错误会造成将来的一些统计错误,需要提前把它们处理好。 可以利用一个“选择性粘贴”的小技巧,先在单元格里放一些0值,选择性粘贴的时候,使用一个“加”法运算。
在之前的文章《Excel高阶图表,牛到不行了》中(Excel源文件下载,回复关键词“仪表盘”),我介绍了用切片器结合数据透视表更新事件的仪表盘制作方法,但从各位朋友的反馈中我觉得大家对两者还是有混淆,在文末会一并解释清楚...可以是普通的数据透视表,如果数据量级过大时,还可以将数据存储在SQL Server中,然后通过Powerpivot连接生成图表;至于控件的选择,需要结合具体的业务需求,通常来讲下拉框、列表框、数据有效性...只需简单的数据透视表及插入切片器的操作,即可完成,不用编写任何VBA代码(VBA焦虑的小伙伴们可以松一口气了)。 Excel切片器是2010版本后增加的新功能,其常与数据透视表/图配合使用。...简单易用,方便格式化,在用户体验上也远优于下拉框、数据有效性等控件,这也是我会比较多使用切片器作为交互式控件的原因。 那么如上这也酷炫的图表是如何制作的呢?..."雕琢自我,普惠他人",非常喜欢笔记侠的这句话,并将其视为我创建Excel知识管理微信公众号的初心。如果各位看官觉得这篇长文干货分享有用,请让其传播得更远,惠及到更多爱学习的小伙伴。
在过去几年中,我们一直在教Excel如何理解新的值类型。...该函数如何工作 新的MAP函数接受一个(或多个)数组/区域引用,并将提供的数组/区域中的每个值作为参数传递给LAMBDA函数(在本例中为表1[值])。...LAMBDA接受来自MAP的参数这一事实是在检查每个新函数时需要记住的一个重要概念,因为每个新函数都不同。 在上面的例子中,有一个数组,因此LAMBDA非常简单,只需要一个参数。...,需要理解的另一个关键概念是,Excel将对提供的每个值进行计算,然后让LAMBDA完成繁重的工作。...value:提供的数组中的值 另一个需要注意的是第一个参数,它是accumulator的[initial value]。在例子中,指定为0。
如何编写安全代码?保护自己免受注入攻击! 我已经在这个问题上工作了好几个月,试图理解是什么让代码变得脆弱,现在,我收到了这个简单的答案 - 糟糕的编程习惯。...最后一行肯定会让很多人受到冒犯,让我说我不是故意要抨击某个社区。我不会这样做因为它不是他们的错,在当前编程时代,代码执行时间需要尽可能低,完全可以理解他们跳过这些部分来增强他们的代码。...如果您认为上述代码是安全的,那么您一定要继续阅读本文。 代码不安全的原因是因为攻击者输入的值直接作为参数传递。...这个例子很容易理解,这个应用程序有一个下拉菜单,您需要从中选择一个PenTest工具选项,应用程序将向您显示您选择的PenTest工具的详细信息。 因此,让我们尝试了解此应用程序的工作原理。...我们可以清楚地看到cookie值已经在警报框中返回给我们,它确认攻击已经通过。 ? 我们需要检查攻击在浏览器中的实际情况,并根据需要显示cookie详细信息。 ?
领取专属 10元无门槛券
手把手带您无忧上云