数据分析常用Excel函数

不写一遍看来我是记不住了…………

预处理:

  • Trim(text):清除掉text两边的空格
  • Concatenate(text1,[text2], ...):将多个文本字符串合并成一个
  • Replace(old_text,start_num, num_chars, new_text)=Replace(原字符串,替换开始位置,替换字符个数,替换字符串):将一个字符串中的部分字符用另一个字符串替换
  • Substitute(text,old_text, new_text, [instance_num])=Substitute(待替换的文本,旧文本,新文本,[替换第n次出现的旧文本]):将字符串中的部分字符以新字符串替换。

[instance_num]可选参数是数值形式,默认全部替换


  • Right(text,[num_chars])=Right(指定字符串,[截取长度]):从一个文本字符的最后一个字符开始返回指定个数的字符
  • Left同上,从第一个字符开始返回
  • Mid(text, start_num,num_chars):从文本字符串中指定的起始位置起返回指定长度的字符
  • Len(text):返回文本字符串中的字符个数,汉字算一个字符
  • Lenb(text):返回文本中所包含的字符数,汉字算两个字符
  • Find(find_text,within_text, [start_num]):返回一个字符串在另一个字符串中出现的起始位置(区分大小写)

[start_num]表示第几位开始查找,默认为1。

注意返回值为find_text在整个字符串中的位置而不是从查找位开始的位置。

  • Search(find_text,within_text, [start_num]):返回一个指定字符或文本字符串在字符串中第一次出现的位置,从左到右查找(忽略大小写)。与Find的区别是不区分大小写且支持通配符*,*代表任意n个字符(n从0开始)
  • Text(value,format_text):根据指定的数值格式将数字转换成文本。format_text参照单元格格式,常与时间序列一起用


关联匹配:

  • Lookup(lookup_value,lookup_vector, [result_vector])=Lookup(查找的值,查找列,返回值所在列)

Lookup(lookup_value, array)=Lookup(查找的值,查找及返回值所在数组)

从单行或单列或从数组中查找一个值。array的第一列为查找列,最后一列为返回值所在列

  • Vlookup(要查找的值、要在其中查找值的区域、区域中包含返回值的列号、精确匹配或近似匹配– 指定为 0/FALSE 或 1/TRUE):搜索表区域首列满足条件的元素,确定待检索单元格在区域中的行序号,再进一步返回选定单元格的值。
  • Index(array,row_num, [column_num])

Index (reference, row_num, [column_num], [area_num])

在给定的单元格区域中,返回特定行列交叉处单元格的值或引用。

row_num,[column_num]中只能省略一个,取0代表所有行/列;

reference可写为(区域1,区域2,…),[area_num]指定第几个区域。

  • Match(lookup_value,lookup_array, [match_type]):返回符合特定值特定顺序的项在数组中的相对位置。

[match_type]可取-1,0,1。

-1:查找大于或等于 lookup_value 的最小值,lookup_array 参数中的值必须按降序排列;

0:查找完全等于 lookup_value 的第一个值,lookup_array 参数中的值可按任何顺序排列;

1:查找小于或等于 lookup_value 的最大值,lookup_array 参数中的值必须以升序排序。

  • Row ([reference]):返回一个引用的行号。如果省略 reference,则假定是对函数 ROW 所在单元格的引用,Reference 不能引用多个区域
  • Column ([reference]):返回一引用的列号
  • Offset (reference, rows, cols, [height], [width]):以指定的引用为参照系,通过给定偏移量返回新的引用。

Rows:需要左上角单元格引用的向上或向下行数。Rows可为正数(这意味着在起始引用的下方)或负数(这意味着在起始引用的上方)。

Cols:需要结果的左上角单元格引用的从左到右的列数。Cols 可为正数或负数

高度:需要返回的引用的行高。 Height 必须为正数。

宽度:需要返回的引用的列宽。 Width 必须为正数。

如果省略 height 或 width,则假设其高度或宽度与 reference 相同。


逻辑运算:

  • If(logical_test,[value_if_true], [value_if_false]):判断是否满足某个条件,如果满足返回一个值,不满足返回另一个值

[value_if_true], [value_if_false]忽略则返回ture/false

  • And(logical1,[logical2], …):检查是否所有参数均为true,若是返回true,否则返回false
  • Or(logical1,[logical2], …):若任一参数值为true即返回true,所有参数为false时返回false
  • Is系列:参数只有一个(value),返回皆为true/false

ISBLANK:值为空白单元格

ISERR:值为任意错误值(除去 #N/A

ISERROR:值为任意错误值(#N/A、#VALUE!、#REF!、#DIV/0!、#NUM!、#NAME?或 #NULL!)

ISLOGICAL:值为逻辑值

ISNA:值为错误值 #N/A(值不存在)

ISNONTEXT:值为不是文本的任意项。 (注意,此函数在值为空单元格时返回 TRUE)

ISNUMBER:值为数字

ISREF:值为引用

ISTEXT:值为文本


统计计算:

  • Sum(number1,[number2],…):计算单元格区域中所有数值的和
  • Sumif(range,criteria, [sum_range]):对满足条件的单元格求和

Range:根据条件进行计算的单元格的区域。

Criteria:用于确定对哪些单元格求和的条件,其形式可以为数字、表达式、单元格引用、文本或函数。例如,条件可以表示为 32、">32"、B5、"32"、"苹果" 或 TODAY()。(注意:任何文本条件或任何含有逻辑或数学符号的条件都必须使用双引号 (") 括起来。 如果条件为数字,则无需使用双引号。)

sum_range:要求和的实际单元格(如果要对未在 range 参数中指定的单元格求和)。如果省略 sum_range 参数,Excel 会对在 range 参数中指定的单元格(即应用条件的单元格)求和。

可以在 criteria 参数中使用通配符 (包括问号 (?) 和星号 (*))。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在该字符前键入波形符 (~)。

sum_range 参数与 range 参数的大小和形状可以不同。 求和的实际单元格通过以下方法确定:使用 sum_range 参数中左上角的单元格作为起始单元格,然后包括与 range 参数大小和形状相对应的单元格。

  • Sumifs(sum_range,criteria_range1,criteria1, [criteria_range2, criteria2], ...):对一组给定条件指定的单元格求和

[criteria_rangeN, criteriaN]成对出现,表示[条件作用域,条件]

  • Sumproduct (array1, [array2],[array3], ...):在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。注意:数组参数必须具有相同的维数
  • Count(value1,[value2],…):计算区域中包含数字的单元格的个数

如果参数为数字、日期或者代表数字的文本(例如,用引号引起的数字,如"1"),则将被计算在内。

逻辑值和直接键入到参数列表中代表数字的文本被计算在内。

如果参数是一个数组或引用,则只计算其中的数字。 数组或引用中的空白单元格、逻辑值、文本或错误值将不计算在内。

  • Countif(range,criteria):计算某个区域中满足给定条件的单元格数目
  • Countifs(criteria_range1,criteria1, [criteria_range2, criteria2],…):统计一组给定条件所指定的单元格数(同时满足一组给定条件的数据条数)
  • Counta(value1,[value2],…):计算区域中非空单元格的个数
  • Countblank(range):计算某个区域中空单元格的数目,包含返回 ""(空文本)的公式的单元格也会计算在内
  • Max(number1,[number2],…):返回一组数值中的最大值,忽略逻辑值及文本
  • Maxa:不忽略逻辑值和字符串
  • Min:返回一组数值中的最小值,忽略逻辑值及文本
  • Mina:不忽略逻辑值和字符串
  • Rank (number,ref,[order])同Rank.EQ(number,ref,[order]):返回某数字在一列数字中相对于其他数值的大小排名,如果多个数值排名相同,则返回该组数值的最佳排名

Number:要找到其排位的数字。

Ref:数字列表的数组,对数字列表的引用。 Ref 中的非数字值会被忽略。

Order:一个指定数字排位方式的数字。

如果 order 为 0(零)或省略,按照降序排列。

如果 order 不为零,按照升序排列

  • Rank.AVG(number,ref,[order]):同上,如果多个数值排名相同,则返回平均值排名
  • Rand():返回大于或等于0且小于1的平均分布随机数
  • Randbetween(bottom,top):返回一个介于指定的数字之间的随机数
  • Average(number1,[number2],…):返回其参数的算数平均值;参数可以是数值或包含数值的名称、数组或引用
  • Averagea(value1,[value2],…):同上,字符串和false相当于0,true相当于1
  • Quartile(array,quart)同Quartile.INC(array,quart):基于从0-1之间(含0与1)的百分点值,返回一组数据的四分位点

Array:要求得四分位数值的数组或数字型单元格区域

Quart:指定返回哪一个值,取0:最小值;取1:第一个四分位数(第25 个百分点值);取2:中分位数(第 50 个百分点值);取3:第三个四分位数(第 75 个百分点值);取4:最大值

如果 array 为空,则QUARTILE 返回 错误值 #NUM!。

如果 quart 不为整数,将被截尾取整。

如果 quart < 0 或 quart > 4,则 QUARTILE 返回 错误值 #NUM!。

当 quart 分别等于 0、2 和 4 时,函数 MIN、MEDIAN 和 MAX 返回的值与函数QUARTILE 返回的值相同。

  • Stdev.P(number1,[number2],…):计算基于给定的样本总体的标准偏差(忽略逻辑值及文本)
  • Stdevpa(value1,[value2],…):同上,包括逻辑值和字符串,字符串和逻辑值false为0,逻辑值true为1
  • Stdev.S(number1,[number2],…):估算基于给定样本的标准偏差(忽略样本中的逻辑值及文本)
  • Stdeva(value1,[value2],…):同上,包括逻辑值和字符串,字符串和逻辑值false为0,逻辑值true为1
  • Substotal(text,old_text, new_text, [instance_num]):将字符串中的部分字符串以新字符串替换

[instance_num]表示替换在text中第几次出现的old_text,省略则全部替换

  • Int(number):将数值向下取整为最接近的整数
  • Round(number,num_digits)= Round(要舍入的数字,舍入位数):按指定的位数对数值进行四舍五入
  • Rounddown(number,num_digits):向下舍入数字

如果 num_digits 大于0(零),则将数字向下舍入到指定的小数位数。

如果 num_digits 为0,则将数字向下舍入到最接近的整数。

如果 num_digits 小于0,则将数字向下舍入到小数点左边的相应位数。

  • Roundup(number,num_digits):向上舍入数字,参数含义同上


时间序列:

  • Year(serial_number):返回日期的年份值(1900-9999),serial_number 为DATE 函数输入的日期
  • Month(serial_number):返回月份值(1-12)
  • Weekday(serial_number,[return_type]):返回代表一周中的第几天的数值(1-7)

Return_type:用于确定返回值类型的数字。取1或省略:数字 1(星期日)到 7(星期六);取2:数字 1(星期一)到 7(星期日)。

  • Weeknum(serial_number,[return_type]):返回某日期在一年中的周数

Return_type:一数字,确定星期从哪一天开始。默认值为 1。1或省略:一周的第一天为星期日,包含 1 月 1 日的周为该年的第 1 周;2:一周的第一天为星期一,包含 1 月1 日的周为该年的第 1 周;21:一周的第一天为星期一,包含该年的第一个星期四的周为该年的第 1 周。

  • Day(serial_number):返回一个月中的第几天(1-31)
  • Days(end_date,start_date):返回两个日期之间的天数
  • Date(year,month,day):返回在MS Excel日期时间代码中代表日期的数字
  • Now():返回日期时间格式的当前日期和时间,xxxx/xx/xx xx:xx
  • Today():返回日期格式的当前日期

你可能感兴趣的:(数据分析,Excel)