初识pandas及基本的增删改查

4 篇文章 0 订阅
2 篇文章 0 订阅

pandas

pandas
1.表格数据操作;【增删改查】
2.实现多个表格的处理;
3.数据清洗操作: 缺失值,重复值,异常值,数据标准化,数据转换的操作;
4.实现excel的特殊操作:生成透视表,交叉表;
5.完成统计分析;

import pandas as pd
import numpy as np

一、构建dataframe

创建方法一:

df = pd.DataFrame(data=[['ss',20, '男','0831'],['lx',20, '女','0830'],['lx',22, '女','0830']], 
                  index=['a','c', 'b'], 
                  columns=['name','age','sex','class'],)
print(df)
  name  age sex class
a   ss   20   男  0831
c   lx   20   女  0830
b   lx   22   女  0830

创建方法二:

df2 = pd.DataFrame(data={'name':['ss','lx'],
                   'age':[20, 18], 
                   'sex':['男','女'], 
                   'class':['0831','0830']})
print(type(df2))
<class 'pandas.core.frame.DataFrame'>

二、dataframe属性

print('df结构:\n', df.shape)
print('df维度:\n', df.ndim)
print('df元素个数:\n', df.size)

print('df数据类型:\n', df.dtypes)
print('df的列索引:\n', df.columns)
print('df的行索引:\n', df.index)
print('df的元素:\n', type(df.values)) #<class 'numpy.ndarray'>
df结构:
 (3, 4)
df维度:
 2
df元素个数:
 12
df数据类型:
 name     object
age       int64
sex      object
class    object
dtype: object
df的列索引:
 Index(['name', 'age', 'sex', 'class'], dtype='object')
df的行索引:
 Index(['a', 'c', 'b'], dtype='object')
df的元素:
 <class 'numpy.ndarray'>

三、df的查找

series是一维的类型,只有一个轴

  1. 切一列值的方法
ser = df['name'] # 一维的切法,返回的是series类型
print(type(ser)) # <class 'pandas.core.series.Series'>
<class 'pandas.core.series.Series'>

2.切多列值的方法

df[['name', 'age']][:2]
nameage
ass20
clx20
  1. 索引; df.loc[行索引名称/条件, 列的索引名称]
print(df)
  name  age sex class
a   ss   20   男  0831
c   lx   20   女  0830
b   lx   22   女  0830
# print(df.loc['a', 'name'])
# print(df.loc[['a','b'],  'name'])
# print(df.loc[['a','b'], ['name','age']])
print(df.loc[:'b', 'name']) # 前闭后闭
a    ss
c    lx
b    lx
Name: name, dtype: object

3.条件切片

例: 获取所有年龄大于18岁的同学

mask = df['age'] > 18
print(mask)
a    True
c    True
b    True
Name: age, dtype: bool
df.loc[mask, 'name']
a    ss
c    lx
b    lx
Name: name, dtype: object

例: 获取所有年龄大于18岁的女同学

mask1 = df['age']>18
mask2 = df['sex'] == '女'
mask3 = mask1 & mask2
df.loc[mask3, :]
nameagesexclass
clx200830
blx220830

df.iloc[行的位置索引, 列的位置索引]

print(df)
  name  age sex class
a   ss   20   男  0831
c   lx   20   女  0830
b   lx   22   女  0830
df.iloc[:, 1]
a    20
c    20
b    22
Name: age, dtype: int64
df.iloc[:2, 2:] # 前闭后开
sexclass
a0831
c0830
df.iloc[-1, :].index
Index(['name', 'age', 'sex', 'class'], dtype='object')

4.df增加方法

(1)增加一列:

df['address'] = ['北京','上海','北京']

print(df)
  name  age sex class address
a   ss   20   男  0831      北京
c   lx   20   女  0830      上海
b   lx   22   女  0830      北京
df['address'] = '北京'
print(df)
  name  age sex class address
a   ss   20   男  0831      北京
c   lx   20   女  0830      北京
b   lx   22   女  0830      北京

(2)增加一行:

df_mini = pd.DataFrame(data={'name':['ss','lx'],
                   'age':[20, 18], 
                   'sex':['男','女'], 
                   'class':['0831','0830']},index=['a','b'])

df3 = df.append(df_mini,ignore_index=True ) 
#ignore_index: 表示忽略原始索引,重新设置索引

print(df3)
  address  age class name sex
0      北京   20  0831   ss   男
1      北京   20  0830   lx   女
2      北京   22  0830   lx   女
3     NaN   20  0831   ss   男
4     NaN   18  0830   lx   女
  1. 删除方法

inplace: 表示是否对原表进行修改,True为直接修改原始表格, False为不修改;

#删除列:
df3.drop(labels=['address','class'], axis=1)
agenamesex
020ss
120lx
222lx
320ss
418lx
df3.drop(labels=[0, 2], axis=0, inplace=True)
print(df3)
  address  age class name sex
1      北京   20  0830   lx   女
3     NaN   20  0831   ss   男
4     NaN   18  0830   lx   女
  1. df更改数值方法
print(df)
  name  age sex class address
a   ss   20   男  0831      北京
c   lx   20   女  0830      北京
b   lx   22   女  0830      北京
# 例: 将名字为“lx”的人的班级改为“有问题”;
df.loc[df['name']=='lx', 'class'] = '有问题'
print(df)
  name  age sex class address
a   ss   20   男  0831      北京
c   lx   20   女   有问题      北京
b   lx   22   女   有问题      北京

四、统计分析

  1. numpy 统计方法:
print(df)
  name  age sex class address
a   ss   20   男  0831      北京
c   lx   20   女   有问题      北京
b   lx   22   女   有问题      北京
#2.  延用numpy中的10个统计分析方法:
np.mean(df['age'])
20.666666666666668
#3.  其它方法:
np.ptp(df['age'])   #极差 : max-min
2
print(df)
  name  age sex class address
a   ss   20   男  0831      北京
c   lx   20   女   有问题      北京
b   lx   22   女   有问题      北京
#4.  pandas中的方法:
# (1) 针对series:
# df['age'].min()                              #df与series中通用
# df['age'].std()                              #df与series中通用
# df['age'].argmax()                           #只能在series中使用

# df['name'].mode()  # 众数                    #df与series中通用
# df['name'].count() # 非空数目                #df与series中通用
# df['name'].value_counts() # 频数统计         #只能在series中使用
#(2) 针对df类型
print(df)
df['grade'] = [98, 90, 92]
  name  age sex class address
a   ss   20   男  0831      北京
c   lx   20   女   有问题      北京
b   lx   22   女   有问题      北京
print(df[['age', 'grade']].idxmax(axis=1)) # 最大值索引, 横向比较; 
a    grade
c    grade
b    grade
dtype: object
print(df[['age', 'grade']].idxmax(axis=0)) # 最大值索引,纵向比较;【一维,二维都可以使用]
age      b
grade    a
dtype: object
print(df.mode()) #众数 【ser和pandas中都可以使用】
  name   age  sex class address  grade
0   lx  20.0    女   有问题      北京     90
1  NaN   NaN  NaN   NaN     NaN     92
2  NaN   NaN  NaN   NaN     NaN     98
print(df[['age','grade']].describe())
             age      grade
count   3.000000   3.000000
mean   20.666667  93.333333
std     1.154701   4.163332
min    20.000000  90.000000
25%    20.000000  91.000000
50%    20.000000  92.000000
75%    21.000000  95.000000
max    22.000000  98.000000
print(df[['name','sex']].describe())

"""
describe()作用在类别型df中返回值:
count:非空数目
unique: 去重之后有几个值;
top:众数
freq:众数出现的频数
"""
       name sex
count     3   3
unique    2   2
top      lx   女
freq      2   2





'\ndescribe()作用在类别型df中返回值:\ncount:非空数目\nunique: 去重之后有几个值;\ntop:众数\nfreq:众数出现的频数\n'
print(df[['age','name']].describe())
             age
count   3.000000
mean   20.666667
std     1.154701
min    20.000000
25%    20.000000
50%    20.000000
75%    21.000000
max    22.000000

五、excel文件读取:

detail = pd.read_excel(r'C:\Users\ibm\Desktop\meal_order_detail.xlsx')

作业:

  1. 删除表格中取值全部为空值的列 或 取值全部相同的列,删完以后结构为多少?
  2. 该饭店中8月1日一共销售了多少个订单?
  3. 该饭店中8月份第一周共收入多少钱?
  4. 该饭店中一共出售多少种菜品,哪种菜品最受欢迎?【请认真思考返回值是否符合逻辑】
  5. 该饭店中菜品均价为多少?最高价格与最低价格差距多大?

补充内容:

1、series构建

pd.Series(data=['lx', 'ss', 'zs'], index=[0, 1, 2])
0    lx
1    ss
2    zs
dtype: object

六、读取excel数据:

1.sheetname; 切换sheet表格
1. 可以传入int,表示从0开始的索引;
2. 可以传入string,表示表名称;
3. 可以传入None,表示一次性获取所有表格;
4. 可以传入list, [‘sheetname’, 2]

data = pd.read_excel(r'C:\Users\ibm\Desktop\meal_order_detail.xlsx',sheetname=['meal_order_detail2','meal_order_detail1'])
data = pd.read_excel(r'C:\Users\ibm\Desktop\meal_order_detail.xlsx', sheetname=None)
print('查看当前表格中所有sheet的名称:\n',  list(data.keys()))

print('参看第一张表格数据:\n', data['meal_order_detail1'])
查看当前表格中所有sheet的名称:
 ['meal_order_detail1', 'meal_order_detail2', 'meal_order_detail3']
参看第一张表格数据:
       detail_id  order_id  dishes_id  logicprn_name  parent_class_name  \
0          2956       417     610062            NaN                NaN   
1          2958       417     609957            NaN                NaN   
2          2961       417     609950            NaN                NaN   
3          2966       417     610038            NaN                NaN   
4          2968       417     610003            NaN                NaN   
5          1899       301     610019            NaN                NaN   
6          1902       301     609991            NaN                NaN   
7          1906       301     609983            NaN                NaN   
8          1907       301     609981            NaN                NaN   
9          1908       301     610030            NaN                NaN   
10         1910       301     610011            NaN                NaN   
11         2916       413     609966            NaN                NaN   
12         2919       413     609965            NaN                NaN   
13         2921       413     609936            NaN                NaN   
14         2923       413     609978            NaN                NaN   
15         2925       413     609983            NaN                NaN   
16         2927       413     610050            NaN                NaN   
17         2926       413     609984            NaN                NaN   
18         2928       413     610013            NaN                NaN   
19         2930       413     610032            NaN                NaN   
20         2932       413     609973            NaN                NaN   
21         2934       413     610007            NaN                NaN   
22         2938       415     609964            NaN                NaN   
23         2935       413     609992            NaN                NaN   
24         2936       413     610012            NaN                NaN   
25         2940       415     610064            NaN                NaN   
26         2937       413     610023            NaN                NaN   
27         2939       413     609931            NaN                NaN   
28         2643       392     609930            NaN                NaN   
29         2942       415     609959            NaN                NaN   
...         ...       ...        ...            ...                ...   
2749       6335       732     609944            NaN                NaN   
2750       6336       732     609952            NaN                NaN   
2751       5074       616     609970            NaN                NaN   
2752       5075       616     610001            NaN                NaN   
2753       6088       716     609970            NaN                NaN   
2754       6091       716     609942            NaN                NaN   
2755       6094       716     609946            NaN                NaN   
2756       6098       716     609953            NaN                NaN   
2757       6106       716     609957            NaN                NaN   
2758       6103       716     609944            NaN                NaN   
2759       5076       616     610000            NaN                NaN   
2760       5080       616     610033            NaN                NaN   
2761       6111       716     609960            NaN                NaN   
2762       6115       716     609955            NaN                NaN   
2763       6120       716     609983            NaN                NaN   
2764       6116       716     609974            NaN                NaN   
2765       6125       716     609991            NaN                NaN   
2766       6127       716     610011            NaN                NaN   
2767       6131       716     610038            NaN                NaN   
2768       6128       716     610022            NaN                NaN   
2769       6135       716     610020            NaN                NaN   
2770       6137       716     610031            NaN                NaN   
2771       6734       774     609941            NaN                NaN   
2772       6736       774     609944            NaN                NaN   
2773       6739       774     609994            NaN                NaN   
2774       6750       774     610011            NaN                NaN   
2775       6742       774     609996            NaN                NaN   
2776       6756       774     609949            NaN                NaN   
2777       6763       774     610014            NaN                NaN   
2778       6764       774     610017            NaN                NaN   

                   dishes_name  itemis_add  counts  amounts  cost  \
0                         蒜蓉生蚝           0       1       49   NaN   
1                        蒙古烤羊腿           0       1       48   NaN   
2                         大蒜苋菜           0       1       30   NaN   
3                        芝麻烤紫菜           0       1       25   NaN   
4                          蒜香包           0       1       13   NaN   
5                          白斩鸡           0       1       88   NaN   
6                         香烤牛排           0       1       55   NaN   
7                         干锅田鸡           0       1       88   NaN   
8                      桂圆枸杞鸽子汤           0       1       48   NaN   
9                       番茄有机花菜           0       1       32   NaN   
10                       白饭/大碗           0       1       10   NaN   
11                    芝士烩波士顿龙虾           0       1      175   NaN   
12                        葱姜炒蟹           0       1      109   NaN   
13                       皮蛋瘦肉粥           0       1       16   NaN   
14                        爆炒鳝碌           0       1       55   NaN   
15                        干锅田鸡           0       1       88   NaN   
16                        番茄甘蓝           0       1       33   NaN   
17                     重庆特色油烧兔           0       1       69   NaN   
18                       番茄炖秋葵           0       1       35   NaN   
19              长城窖酿解百纳红酒干红葡萄酒           0       1       35   NaN   
20                       紫薯面包卷           0       1       20   NaN   
21                    桂圆肉红豆八宝饭           0       1       39   NaN   
22                       避风塘炒蟹           0       1       48   NaN   
23           番茄炖牛腩\r\n\r\n\r\n           0       1       35   NaN   
24                       香菇鹌鹑蛋           0       1       39   NaN   
25                        花蛤蒸蛋           0       1       37   NaN   
26                         啤酒鸭           0       1       48   NaN   
27                         焖猪手           0       1       58   NaN   
28                     豌豆薯仔猪骨汤           0       1       39   NaN   
29            小炒羊腰\r\n\r\n\r\n           0       1       36   NaN   
...                        ...         ...     ...      ...   ...   
2749                       水煮鱼           0       1       65   NaN   
2750                  美妙绝伦之白莲花           0       1       29   NaN   
2751                     麻辣小龙虾           0       1       99   NaN   
2752                   土豆西红柿汤面           0       1       13   NaN   
2753                     麻辣小龙虾           0       1       99   NaN   
2754                      辣炒鱿鱼           0       1       58   NaN   
2755                     谷稻小庄            0       1       38   NaN   
2756                      凉拌菠菜           0       1       27   NaN   
2757         蒙古烤羊腿\r\n\r\n\r\n           0       1       48   NaN   
2758                       水煮鱼           0       1       65   NaN   
2759                      酸辣汤面           0       1       16   NaN   
2760  张裕葡萄酒张裕赤霞珠干红\r\n\r\n\r\n           0       1       32   NaN   
2761                 白胡椒胡萝卜羊肉汤           0       1       35   NaN   
2762                     红酒炖羊肉           0       1      108   NaN   
2763                      干锅田鸡           0       1       88   NaN   
2764                   南瓜枸杞小饼干           0       1       19   NaN   
2765          香烤牛排\r\n\r\n\r\n           0       1       55   NaN   
2766                     白饭/大碗           0       1       10   NaN   
2767                     芝麻烤紫菜           0       1       25   NaN   
2768                      杭椒鸡珍           0       1       58   NaN   
2769          泡椒凤爪\r\n\r\n\r\n           0       1       58   NaN   
2770                   糖醋蕃茄溜青花           0       1       33   NaN   
2771                      清蒸海鱼           0       1       78   NaN   
2772                       水煮鱼           0       1       65   NaN   
2773     独家薄荷鲜虾牛肉卷\r\n\r\n\r\n           0       1       45   NaN   
2774                     白饭/大碗           0       1       10   NaN   
2775                       牛尾汤           0       1       40   NaN   
2776                    意文柠檬汁            0       1       13   NaN   
2777                      金玉良缘           0       1       30   NaN   
2778                      酸辣藕丁           0       1       33   NaN   

        place_order_time  discount_amt  discount_reason  kick_back  \
0    2016-08-01 11:05:36           NaN              NaN        NaN   
1    2016-08-01 11:07:07           NaN              NaN        NaN   
2    2016-08-01 11:07:40           NaN              NaN        NaN   
3    2016-08-01 11:11:11           NaN              NaN        NaN   
4    2016-08-01 11:11:30           NaN              NaN        NaN   
5    2016-08-01 11:15:57           NaN              NaN        NaN   
6    2016-08-01 11:19:12           NaN              NaN        NaN   
7    2016-08-01 11:22:21           NaN              NaN        NaN   
8    2016-08-01 11:22:53           NaN              NaN        NaN   
9    2016-08-01 11:23:56           NaN              NaN        NaN   
10   2016-08-01 11:31:15           NaN              NaN        NaN   
11   2016-08-01 12:42:52           NaN              NaN        NaN   
12   2016-08-01 12:43:21           NaN              NaN        NaN   
13   2016-08-01 12:43:34           NaN              NaN        NaN   
14   2016-08-01 12:44:08           NaN              NaN        NaN   
15   2016-08-01 12:44:12           NaN              NaN        NaN   
16   2016-08-01 12:45:09           NaN              NaN        NaN   
17   2016-08-01 12:45:24           NaN              NaN        NaN   
18   2016-08-01 12:46:26           NaN              NaN        NaN   
19   2016-08-01 12:48:48           NaN              NaN        NaN   
20   2016-08-01 12:49:27           NaN              NaN        NaN   
21   2016-08-01 12:50:03           NaN              NaN        NaN   
22   2016-08-01 12:51:38           NaN              NaN        NaN   
23   2016-08-01 12:51:46           NaN              NaN        NaN   
24   2016-08-01 12:52:18           NaN              NaN        NaN   
25   2016-08-01 12:52:37           NaN              NaN        NaN   
26   2016-08-01 12:53:39           NaN              NaN        NaN   
27   2016-08-01 12:54:30           NaN              NaN        NaN   
28   2016-08-01 12:58:44           NaN              NaN        NaN   
29   2016-08-01 12:59:03           NaN              NaN        NaN   
...                  ...           ...              ...        ...   
2749 2016-08-10 20:19:03           NaN              NaN        NaN   
2750 2016-08-10 20:19:22           NaN              NaN        NaN   
2751 2016-08-10 20:37:48           NaN              NaN        NaN   
2752 2016-08-10 20:39:37           NaN              NaN        NaN   
2753 2016-08-10 20:41:10           NaN              NaN        NaN   
2754 2016-08-10 20:41:29           NaN              NaN        NaN   
2755 2016-08-10 20:46:41           NaN              NaN        NaN   
2756 2016-08-10 20:47:14           NaN              NaN        NaN   
2757 2016-08-10 20:47:17           NaN              NaN        NaN   
2758 2016-08-10 20:47:36           NaN              NaN        NaN   
2759 2016-08-10 20:48:31           NaN              NaN        NaN   
2760 2016-08-10 20:49:20           NaN              NaN        NaN   
2761 2016-08-10 20:50:11           NaN              NaN        NaN   
2762 2016-08-10 20:50:12           NaN              NaN        NaN   
2763 2016-08-10 20:51:37           NaN              NaN        NaN   
2764 2016-08-10 20:51:42           NaN              NaN        NaN   
2765 2016-08-10 20:52:09           NaN              NaN        NaN   
2766 2016-08-10 20:52:12           NaN              NaN        NaN   
2767 2016-08-10 20:53:09           NaN              NaN        NaN   
2768 2016-08-10 20:53:26           NaN              NaN        NaN   
2769 2016-08-10 20:56:10           NaN              NaN        NaN   
2770 2016-08-10 20:57:11           NaN              NaN        NaN   
2771 2016-08-10 21:50:35           NaN              NaN        NaN   
2772 2016-08-10 21:53:17           NaN              NaN        NaN   
2773 2016-08-10 21:55:58           NaN              NaN        NaN   
2774 2016-08-10 21:56:24           NaN              NaN        NaN   
2775 2016-08-10 21:56:48           NaN              NaN        NaN   
2776 2016-08-10 22:01:52           NaN              NaN        NaN   
2777 2016-08-10 22:03:58           NaN              NaN        NaN   
2778 2016-08-10 22:04:30           NaN              NaN        NaN   

      add_inprice  add_info  bar_code      picture_file  emp_id  
0               0       NaN       NaN  caipu/104001.jpg    1442  
1               0       NaN       NaN  caipu/202003.jpg    1442  
2               0       NaN       NaN  caipu/303001.jpg    1442  
3               0       NaN       NaN  caipu/105002.jpg    1442  
4               0       NaN       NaN  caipu/503002.jpg    1442  
5               0       NaN       NaN  caipu/204002.jpg    1095  
6               0       NaN       NaN  caipu/201001.jpg    1095  
7               0       NaN       NaN  caipu/205003.jpg    1095  
8               0       NaN       NaN  caipu/205001.jpg    1095  
9               0       NaN       NaN  caipu/304004.jpg    1095  
10              0       NaN       NaN  caipu/601005.jpg    1095  
11              0       NaN       NaN  caipu/101001.jpg    1147  
12              0       NaN       NaN  caipu/102005.jpg    1147  
13              0       NaN       NaN  caipu/602002.jpg    1147  
14              0       NaN       NaN  caipu/106003.jpg    1147  
15              0       NaN       NaN  caipu/205003.jpg    1147  
16              0       NaN       NaN  caipu/301004.jpg    1147  
17              0       NaN       NaN  caipu/205004.jpg    1147  
18              0       NaN       NaN  caipu/302002.jpg    1147  
19              0       NaN       NaN  caipu/401001.jpg    1147  
20              0       NaN       NaN  caipu/502003.jpg    1147  
21              0       NaN       NaN  caipu/601001.jpg    1147  
22              0       NaN       NaN  caipu/102004.jpg    1166  
23              0       NaN       NaN  caipu/201002.jpg    1147  
24              0       NaN       NaN  caipu/302001.jpg    1147  
25              0       NaN       NaN  caipu/104003.jpg    1166  
26              0       NaN       NaN  caipu/204006.jpg    1147  
27              0       NaN       NaN  caipu/203002.jpg    1147  
28              0       NaN       NaN  caipu/203001.jpg    1094  
29              0       NaN       NaN  caipu/202005.jpg    1166  
...           ...       ...       ...               ...     ...  
2749            0       NaN       NaN  caipu/103005.jpg    1153  
2750            0       NaN       NaN  caipu/303003.jpg    1153  
2751            0       NaN       NaN  caipu/101006.jpg    1133  
2752            0       NaN       NaN  caipu/603005.jpg    1133  
2753            0       NaN       NaN  caipu/101006.jpg    1112  
2754            0       NaN       NaN  caipu/103003.jpg    1112  
2755            0       NaN       NaN  caipu/404002.jpg    1112  
2756            0       NaN       NaN  caipu/303004.jpg    1112  
2757            0       NaN       NaN  caipu/202003.jpg    1112  
2758            0       NaN       NaN  caipu/103005.jpg    1112  
2759            0       NaN       NaN  caipu/603004.jpg    1133  
2760            0       NaN       NaN  caipu/402002.jpg    1133  
2761            0       NaN       NaN  caipu/202006.jpg    1112  
2762            0       NaN       NaN  caipu/202001.jpg    1112  
2763            0       NaN       NaN  caipu/205003.jpg    1112  
2764            0       NaN       NaN  caipu/502004.jpg    1112  
2765            0       NaN       NaN  caipu/201001.jpg    1112  
2766            0       NaN       NaN  caipu/601005.jpg    1112  
2767            0       NaN       NaN  caipu/105002.jpg    1112  
2768            0       NaN       NaN  caipu/204005.jpg    1112  
2769            0       NaN       NaN  caipu/204003.jpg    1112  
2770            0       NaN       NaN  caipu/304005.jpg    1112  
2771            0       NaN       NaN  caipu/103002.jpg    1138  
2772            0       NaN       NaN  caipu/103005.jpg    1138  
2773            0       NaN       NaN  caipu/201004.jpg    1138  
2774            0       NaN       NaN  caipu/601005.jpg    1138  
2775            0       NaN       NaN  caipu/201006.jpg    1138  
2776            0       NaN       NaN  caipu/404005.jpg    1138  
2777            0       NaN       NaN  caipu/302003.jpg    1138  
2778            0       NaN       NaN  caipu/302006.jpg    1138  

[2779 rows x 19 columns]

2.header:表示选择哪一行作为列索引, 默认为第一行, 当header不为0时, 会将默认为列索引之前的行全部删掉不读;

data = pd.read_excel(r'C:\Users\ibm\Desktop\meal_order_detail.xlsx',
                     sheet_name=0, header=2)
print(data)
      2958  417  609957  NA  NA.1                     蒙古烤羊腿  0  1   48  NA.2  \
0     2961  417  609950 NaN   NaN                      大蒜苋菜  0  1   30   NaN   
1     2966  417  610038 NaN   NaN                     芝麻烤紫菜  0  1   25   NaN   
2     2968  417  610003 NaN   NaN                       蒜香包  0  1   13   NaN   
3     1899  301  610019 NaN   NaN                       白斩鸡  0  1   88   NaN   
4     1902  301  609991 NaN   NaN                      香烤牛排  0  1   55   NaN   
5     1906  301  609983 NaN   NaN                      干锅田鸡  0  1   88   NaN   
6     1907  301  609981 NaN   NaN                   桂圆枸杞鸽子汤  0  1   48   NaN   
7     1908  301  610030 NaN   NaN                    番茄有机花菜  0  1   32   NaN   
8     1910  301  610011 NaN   NaN                     白饭/大碗  0  1   10   NaN   
9     2916  413  609966 NaN   NaN                  芝士烩波士顿龙虾  0  1  175   NaN   
10    2919  413  609965 NaN   NaN                      葱姜炒蟹  0  1  109   NaN   
11    2921  413  609936 NaN   NaN                     皮蛋瘦肉粥  0  1   16   NaN   
12    2923  413  609978 NaN   NaN                      爆炒鳝碌  0  1   55   NaN   
13    2925  413  609983 NaN   NaN                      干锅田鸡  0  1   88   NaN   
14    2927  413  610050 NaN   NaN                      番茄甘蓝  0  1   33   NaN   
15    2926  413  609984 NaN   NaN                   重庆特色油烧兔  0  1   69   NaN   
16    2928  413  610013 NaN   NaN                     番茄炖秋葵  0  1   35   NaN   
17    2930  413  610032 NaN   NaN            长城窖酿解百纳红酒干红葡萄酒  0  1   35   NaN   
18    2932  413  609973 NaN   NaN                     紫薯面包卷  0  1   20   NaN   
19    2934  413  610007 NaN   NaN                  桂圆肉红豆八宝饭  0  1   39   NaN   
20    2938  415  609964 NaN   NaN                     避风塘炒蟹  0  1   48   NaN   
21    2935  413  609992 NaN   NaN         番茄炖牛腩\r\n\r\n\r\n  0  1   35   NaN   
22    2936  413  610012 NaN   NaN                     香菇鹌鹑蛋  0  1   39   NaN   
23    2940  415  610064 NaN   NaN                      花蛤蒸蛋  0  1   37   NaN   
24    2937  413  610023 NaN   NaN                       啤酒鸭  0  1   48   NaN   
25    2939  413  609931 NaN   NaN                       焖猪手  0  1   58   NaN   
26    2643  392  609930 NaN   NaN                   豌豆薯仔猪骨汤  0  1   39   NaN   
27    2942  415  609959 NaN   NaN          小炒羊腰\r\n\r\n\r\n  0  1   36   NaN   
28    2652  392  609936 NaN   NaN                     皮蛋瘦肉粥  0  1   16   NaN   
29    2650  392  609935 NaN   NaN                     山药养生粥  0  1   19   NaN   
...    ...  ...     ...  ..   ...                       ... .. ..  ...   ...   
2747  6335  732  609944 NaN   NaN                       水煮鱼  0  1   65   NaN   
2748  6336  732  609952 NaN   NaN                  美妙绝伦之白莲花  0  1   29   NaN   
2749  5074  616  609970 NaN   NaN                     麻辣小龙虾  0  1   99   NaN   
2750  5075  616  610001 NaN   NaN                   土豆西红柿汤面  0  1   13   NaN   
2751  6088  716  609970 NaN   NaN                     麻辣小龙虾  0  1   99   NaN   
2752  6091  716  609942 NaN   NaN                      辣炒鱿鱼  0  1   58   NaN   
2753  6094  716  609946 NaN   NaN                     谷稻小庄   0  1   38   NaN   
2754  6098  716  609953 NaN   NaN                      凉拌菠菜  0  1   27   NaN   
2755  6106  716  609957 NaN   NaN         蒙古烤羊腿\r\n\r\n\r\n  0  1   48   NaN   
2756  6103  716  609944 NaN   NaN                       水煮鱼  0  1   65   NaN   
2757  5076  616  610000 NaN   NaN                      酸辣汤面  0  1   16   NaN   
2758  5080  616  610033 NaN   NaN  张裕葡萄酒张裕赤霞珠干红\r\n\r\n\r\n  0  1   32   NaN   
2759  6111  716  609960 NaN   NaN                 白胡椒胡萝卜羊肉汤  0  1   35   NaN   
2760  6115  716  609955 NaN   NaN                     红酒炖羊肉  0  1  108   NaN   
2761  6120  716  609983 NaN   NaN                      干锅田鸡  0  1   88   NaN   
2762  6116  716  609974 NaN   NaN                   南瓜枸杞小饼干  0  1   19   NaN   
2763  6125  716  609991 NaN   NaN          香烤牛排\r\n\r\n\r\n  0  1   55   NaN   
2764  6127  716  610011 NaN   NaN                     白饭/大碗  0  1   10   NaN   
2765  6131  716  610038 NaN   NaN                     芝麻烤紫菜  0  1   25   NaN   
2766  6128  716  610022 NaN   NaN                      杭椒鸡珍  0  1   58   NaN   
2767  6135  716  610020 NaN   NaN          泡椒凤爪\r\n\r\n\r\n  0  1   58   NaN   
2768  6137  716  610031 NaN   NaN                   糖醋蕃茄溜青花  0  1   33   NaN   
2769  6734  774  609941 NaN   NaN                      清蒸海鱼  0  1   78   NaN   
2770  6736  774  609944 NaN   NaN                       水煮鱼  0  1   65   NaN   
2771  6739  774  609994 NaN   NaN     独家薄荷鲜虾牛肉卷\r\n\r\n\r\n  0  1   45   NaN   
2772  6750  774  610011 NaN   NaN                     白饭/大碗  0  1   10   NaN   
2773  6742  774  609996 NaN   NaN                       牛尾汤  0  1   40   NaN   
2774  6756  774  609949 NaN   NaN                    意文柠檬汁   0  1   13   NaN   
2775  6763  774  610014 NaN   NaN                      金玉良缘  0  1   30   NaN   
2776  6764  774  610017 NaN   NaN                      酸辣藕丁  0  1   33   NaN   

     2016-08-01 11:07:07  NA.3  NA.4  NA.5  0.1  NA.6  NA.7  caipu/202003.jpg  \
0    2016-08-01 11:07:40   NaN   NaN   NaN    0   NaN   NaN  caipu/303001.jpg   
1    2016-08-01 11:11:11   NaN   NaN   NaN    0   NaN   NaN  caipu/105002.jpg   
2    2016-08-01 11:11:30   NaN   NaN   NaN    0   NaN   NaN  caipu/503002.jpg   
3    2016-08-01 11:15:57   NaN   NaN   NaN    0   NaN   NaN  caipu/204002.jpg   
4    2016-08-01 11:19:12   NaN   NaN   NaN    0   NaN   NaN  caipu/201001.jpg   
5    2016-08-01 11:22:21   NaN   NaN   NaN    0   NaN   NaN  caipu/205003.jpg   
6    2016-08-01 11:22:53   NaN   NaN   NaN    0   NaN   NaN  caipu/205001.jpg   
7    2016-08-01 11:23:56   NaN   NaN   NaN    0   NaN   NaN  caipu/304004.jpg   
8    2016-08-01 11:31:15   NaN   NaN   NaN    0   NaN   NaN  caipu/601005.jpg   
9    2016-08-01 12:42:52   NaN   NaN   NaN    0   NaN   NaN  caipu/101001.jpg   
10   2016-08-01 12:43:21   NaN   NaN   NaN    0   NaN   NaN  caipu/102005.jpg   
11   2016-08-01 12:43:34   NaN   NaN   NaN    0   NaN   NaN  caipu/602002.jpg   
12   2016-08-01 12:44:08   NaN   NaN   NaN    0   NaN   NaN  caipu/106003.jpg   
13   2016-08-01 12:44:12   NaN   NaN   NaN    0   NaN   NaN  caipu/205003.jpg   
14   2016-08-01 12:45:09   NaN   NaN   NaN    0   NaN   NaN  caipu/301004.jpg   
15   2016-08-01 12:45:24   NaN   NaN   NaN    0   NaN   NaN  caipu/205004.jpg   
16   2016-08-01 12:46:26   NaN   NaN   NaN    0   NaN   NaN  caipu/302002.jpg   
17   2016-08-01 12:48:48   NaN   NaN   NaN    0   NaN   NaN  caipu/401001.jpg   
18   2016-08-01 12:49:27   NaN   NaN   NaN    0   NaN   NaN  caipu/502003.jpg   
19   2016-08-01 12:50:03   NaN   NaN   NaN    0   NaN   NaN  caipu/601001.jpg   
20   2016-08-01 12:51:38   NaN   NaN   NaN    0   NaN   NaN  caipu/102004.jpg   
21   2016-08-01 12:51:46   NaN   NaN   NaN    0   NaN   NaN  caipu/201002.jpg   
22   2016-08-01 12:52:18   NaN   NaN   NaN    0   NaN   NaN  caipu/302001.jpg   
23   2016-08-01 12:52:37   NaN   NaN   NaN    0   NaN   NaN  caipu/104003.jpg   
24   2016-08-01 12:53:39   NaN   NaN   NaN    0   NaN   NaN  caipu/204006.jpg   
25   2016-08-01 12:54:30   NaN   NaN   NaN    0   NaN   NaN  caipu/203002.jpg   
26   2016-08-01 12:58:44   NaN   NaN   NaN    0   NaN   NaN  caipu/203001.jpg   
27   2016-08-01 12:59:03   NaN   NaN   NaN    0   NaN   NaN  caipu/202005.jpg   
28   2016-08-01 12:59:16   NaN   NaN   NaN    0   NaN   NaN  caipu/602002.jpg   
29   2016-08-01 12:59:26   NaN   NaN   NaN    0   NaN   NaN  caipu/602001.jpg   
...                  ...   ...   ...   ...  ...   ...   ...               ...   
2747 2016-08-10 20:19:03   NaN   NaN   NaN    0   NaN   NaN  caipu/103005.jpg   
2748 2016-08-10 20:19:22   NaN   NaN   NaN    0   NaN   NaN  caipu/303003.jpg   
2749 2016-08-10 20:37:48   NaN   NaN   NaN    0   NaN   NaN  caipu/101006.jpg   
2750 2016-08-10 20:39:37   NaN   NaN   NaN    0   NaN   NaN  caipu/603005.jpg   
2751 2016-08-10 20:41:10   NaN   NaN   NaN    0   NaN   NaN  caipu/101006.jpg   
2752 2016-08-10 20:41:29   NaN   NaN   NaN    0   NaN   NaN  caipu/103003.jpg   
2753 2016-08-10 20:46:41   NaN   NaN   NaN    0   NaN   NaN  caipu/404002.jpg   
2754 2016-08-10 20:47:14   NaN   NaN   NaN    0   NaN   NaN  caipu/303004.jpg   
2755 2016-08-10 20:47:17   NaN   NaN   NaN    0   NaN   NaN  caipu/202003.jpg   
2756 2016-08-10 20:47:36   NaN   NaN   NaN    0   NaN   NaN  caipu/103005.jpg   
2757 2016-08-10 20:48:31   NaN   NaN   NaN    0   NaN   NaN  caipu/603004.jpg   
2758 2016-08-10 20:49:20   NaN   NaN   NaN    0   NaN   NaN  caipu/402002.jpg   
2759 2016-08-10 20:50:11   NaN   NaN   NaN    0   NaN   NaN  caipu/202006.jpg   
2760 2016-08-10 20:50:12   NaN   NaN   NaN    0   NaN   NaN  caipu/202001.jpg   
2761 2016-08-10 20:51:37   NaN   NaN   NaN    0   NaN   NaN  caipu/205003.jpg   
2762 2016-08-10 20:51:42   NaN   NaN   NaN    0   NaN   NaN  caipu/502004.jpg   
2763 2016-08-10 20:52:09   NaN   NaN   NaN    0   NaN   NaN  caipu/201001.jpg   
2764 2016-08-10 20:52:12   NaN   NaN   NaN    0   NaN   NaN  caipu/601005.jpg   
2765 2016-08-10 20:53:09   NaN   NaN   NaN    0   NaN   NaN  caipu/105002.jpg   
2766 2016-08-10 20:53:26   NaN   NaN   NaN    0   NaN   NaN  caipu/204005.jpg   
2767 2016-08-10 20:56:10   NaN   NaN   NaN    0   NaN   NaN  caipu/204003.jpg   
2768 2016-08-10 20:57:11   NaN   NaN   NaN    0   NaN   NaN  caipu/304005.jpg   
2769 2016-08-10 21:50:35   NaN   NaN   NaN    0   NaN   NaN  caipu/103002.jpg   
2770 2016-08-10 21:53:17   NaN   NaN   NaN    0   NaN   NaN  caipu/103005.jpg   
2771 2016-08-10 21:55:58   NaN   NaN   NaN    0   NaN   NaN  caipu/201004.jpg   
2772 2016-08-10 21:56:24   NaN   NaN   NaN    0   NaN   NaN  caipu/601005.jpg   
2773 2016-08-10 21:56:48   NaN   NaN   NaN    0   NaN   NaN  caipu/201006.jpg   
2774 2016-08-10 22:01:52   NaN   NaN   NaN    0   NaN   NaN  caipu/404005.jpg   
2775 2016-08-10 22:03:58   NaN   NaN   NaN    0   NaN   NaN  caipu/302003.jpg   
2776 2016-08-10 22:04:30   NaN   NaN   NaN    0   NaN   NaN  caipu/302006.jpg   

      1442  
0     1442  
1     1442  
2     1442  
3     1095  
4     1095  
5     1095  
6     1095  
7     1095  
8     1095  
9     1147  
10    1147  
11    1147  
12    1147  
13    1147  
14    1147  
15    1147  
16    1147  
17    1147  
18    1147  
19    1147  
20    1166  
21    1147  
22    1147  
23    1166  
24    1147  
25    1147  
26    1094  
27    1166  
28    1094  
29    1094  
...    ...  
2747  1153  
2748  1153  
2749  1133  
2750  1133  
2751  1112  
2752  1112  
2753  1112  
2754  1112  
2755  1112  
2756  1112  
2757  1133  
2758  1133  
2759  1112  
2760  1112  
2761  1112  
2762  1112  
2763  1112  
2764  1112  
2765  1112  
2766  1112  
2767  1112  
2768  1112  
2769  1138  
2770  1138  
2771  1138  
2772  1138  
2773  1138  
2774  1138  
2775  1138  
2776  1138  

[2777 rows x 19 columns]

3.当文件中没有给出表头的时候,需要将header设置为None, 并且传入与列数量一致的list,
name=[ ]

data = pd.read_excel(r'C:\Users\ibm\Desktop\meal_order_detail.xlsx',
                     names=np.arange(19),
                     header=None)
print(data.head())
          0         1          2              3                  4   \
0  detail_id  order_id  dishes_id  logicprn_name  parent_class_name   
1       2956       417     610062            NaN                NaN   
2       2958       417     609957            NaN                NaN   
3       2961       417     609950            NaN                NaN   
4       2966       417     610038            NaN                NaN   

            5           6       7        8     9                    10  \
0  dishes_name  itemis_add  counts  amounts  cost     place_order_time   
1         蒜蓉生蚝           0       1       49   NaN  2016-08-01 11:05:36   
2        蒙古烤羊腿           0       1       48   NaN  2016-08-01 11:07:07   
3         大蒜苋菜           0       1       30   NaN  2016-08-01 11:07:40   
4        芝麻烤紫菜           0       1       25   NaN  2016-08-01 11:11:11   

             11               12         13           14        15        16  \
0  discount_amt  discount_reason  kick_back  add_inprice  add_info  bar_code   
1           NaN              NaN        NaN            0       NaN       NaN   
2           NaN              NaN        NaN            0       NaN       NaN   
3           NaN              NaN        NaN            0       NaN       NaN   
4           NaN              NaN        NaN            0       NaN       NaN   

                 17      18  
0      picture_file  emp_id  
1  caipu/104001.jpg    1442  
2  caipu/202003.jpg    1442  
3  caipu/303001.jpg    1442  
4  caipu/105002.jpg    1442  

4.skiprows:

data = pd.read_excel(r'C:\Users\ibm\Desktop\meal_order_detail.xlsx', 
                     skiprows=[1, 10], header=0)
# print(data.head(6)) # 从头开始读,读前几行信息
print(data.tail(5))   # 从尾部读,读后几行信息
      detail_id  order_id  dishes_id  logicprn_name  parent_class_name  \
2772       6750       774     610011            NaN                NaN   
2773       6742       774     609996            NaN                NaN   
2774       6756       774     609949            NaN                NaN   
2775       6763       774     610014            NaN                NaN   
2776       6764       774     610017            NaN                NaN   

     dishes_name  itemis_add  counts  amounts  cost    place_order_time  \
2772       白饭/大碗           0       1       10   NaN 2016-08-10 21:56:24   
2773         牛尾汤           0       1       40   NaN 2016-08-10 21:56:48   
2774      意文柠檬汁            0       1       13   NaN 2016-08-10 22:01:52   
2775        金玉良缘           0       1       30   NaN 2016-08-10 22:03:58   
2776        酸辣藕丁           0       1       33   NaN 2016-08-10 22:04:30   

      discount_amt  discount_reason  kick_back  add_inprice  add_info  \
2772           NaN              NaN        NaN            0       NaN   
2773           NaN              NaN        NaN            0       NaN   
2774           NaN              NaN        NaN            0       NaN   
2775           NaN              NaN        NaN            0       NaN   
2776           NaN              NaN        NaN            0       NaN   

      bar_code      picture_file  emp_id  
2772       NaN  caipu/601005.jpg    1138  
2773       NaN  caipu/201006.jpg    1138  
2774       NaN  caipu/404005.jpg    1138  
2775       NaN  caipu/302003.jpg    1138  
2776       NaN  caipu/302006.jpg    1138  

读取csv文件

1.csv属于文本文件, 逗号分隔符文件,编码一般为gbk;

2.read_csv方法中参数说明:
1.sep: 元素分隔符,csv文件中默认分隔符为逗号;
2.engine:底层编译方式,默认为c语言,如果遇到编码问题,可以尝试将engine改为Python;

order = pd.read_csv(r'C:\Users\ibm\Desktop\meal_order_info.csv', sep=',', encoding='gbk',
                    engine='python' )
print(order.head())
   info_id  emp_id  number_consumers  mode  dining_table_id  \
0      417    1442                 4   NaN             1501   
1      301    1095                 3   NaN             1430   
2      413    1147                 6   NaN             1488   
3      415    1166                 4   NaN             1502   
4      392    1094                10   NaN             1499   

   dining_table_name  expenditure  dishes_count  accounts_payable  \
0               1022          165             5               165   
1               1031          321             6               321   
2               1009          854            15               854   
3               1023          466            10               466   
4               1020          704            24               704   

   use_start_time  ...        lock_time cashier_id  pc_id  order_number  \
0  2016/8/1 11:05  ...   2016/8/1 11:11        NaN    NaN           NaN   
1  2016/8/1 11:15  ...   2016/8/1 11:31        NaN    NaN           NaN   
2  2016/8/1 12:42  ...   2016/8/1 12:54        NaN    NaN           NaN   
3  2016/8/1 12:51  ...   2016/8/1 13:08        NaN    NaN           NaN   
4  2016/8/1 12:58  ...   2016/8/1 13:07        NaN    NaN           NaN   

   org_id  print_doc_bill_num  lock_table_info  order_status        phone  \
0     330                 NaN              NaN             1  18688880641   
1     328                 NaN              NaN             1  18688880174   
2     330                 NaN              NaN             1  18688880276   
3     330                 NaN              NaN             1  18688880231   
4     330                 NaN              NaN             1  18688880173   

   name  
0   苗宇怡  
1    赵颖  
2   徐毅凡  
3   张大鹏  
4   孙熙凯  

[5 rows x 21 columns]

扩展:读取文本文件的方法:.txt, .csv

pd.read_table(r'C:\Users\ibm\Desktop\meal_order_info.csv', sep=',', encoding='gbk',
                    engine='python')
info_idemp_idnumber_consumersmodedining_table_iddining_table_nameexpendituredishes_countaccounts_payableuse_start_time...lock_timecashier_idpc_idorder_numberorg_idprint_doc_bill_numlock_table_infoorder_statusphonename
041714424NaN1501102216551652016/8/1 11:05...2016/8/1 11:11NaNNaNNaN330NaNNaN118688880641苗宇怡
130110953NaN1430103132163212016/8/1 11:15...2016/8/1 11:31NaNNaNNaN328NaNNaN118688880174赵颖
241311476NaN14881009854158542016/8/1 12:42...2016/8/1 12:54NaNNaNNaN330NaNNaN118688880276徐毅凡
341511664NaN15021023466104662016/8/1 12:51...2016/8/1 13:08NaNNaNNaN330NaNNaN118688880231张大鹏
4392109410NaN14991020704247042016/8/1 12:58...2016/8/1 13:07NaNNaNNaN330NaNNaN118688880173孙熙凯
538112434NaN1487100823972392016/8/1 13:15...2016/8/1 13:23NaNNaNNaN330NaNNaN118688880441沈晓雯
642914524NaN15011022699156992016/8/1 13:17...2016/8/1 13:34NaNNaNNaN330NaNNaN118688880651苗泽坤
743311098NaN14901011511145112016/8/1 13:38...2016/8/1 13:50NaNNaNNaN330NaNNaN118688880212李达明
856911436NaN1488100932693262016/8/1 17:06...2016/8/1 17:18NaNNaNNaN330NaNNaN118688880272陈有浩
965512688NaN14921013263102632016/8/1 17:32...2016/8/1 17:44NaNNaNNaN330NaNNaN118688880466沈丹丹
1057711507NaN1492101338073802016/8/1 17:37...2016/8/1 17:50NaNNaNNaN330NaNNaN118688880279胡煜
1162212204NaN1483100416471642016/8/1 17:40...2016/8/1 17:47NaNNaNNaN330NaNNaN118688880419徐骏太
1265115933NaN1485100613751372016/8/1 18:12...2016/8/1 18:20NaNNaNNaN330NaNNaN118688880792高僖桐
1369411228NaN14921013819108192016/8/1 18:26...2016/8/1 18:37NaNNaNNaN330NaNNaN118688880316朱钰
1446211877NaN14901011431134312016/8/1 18:45...2016/8/1 18:49NaNNaNNaN330NaNNaN118688880366孙新潇
1545814552NaN14801001700147002016/8/1 19:27...2016/8/1 19:31NaNNaNNaN330NaNNaN118688880654牛长金
16467121310NaN14951016615156152016/8/1 19:40...NaNNaNNaNNaN330NaNNaN018688880412赵英
1756215528NaN1508102936673662016/8/1 19:44...2016/8/1 19:57NaNNaNNaN330NaNNaN118688880751王嘉淏
1848611567NaN14921013443124432016/8/1 20:31...2016/8/1 20:36NaNNaNNaN330NaNNaN118688880285张芳语
1951710082NaN1480100129472942016/8/1 21:11...2016/8/1 21:21NaNNaNNaN330NaNNaN118688880027许和怡
2045211148NaN1492101316771672016/8/1 21:19...2016/8/1 21:29NaNNaNNaN330NaNNaN118688880193邵昱笑
2144814496NaN15051026609146092016/8/1 21:37...2016/8/1 21:52NaNNaNNaN330NaNNaN118688880648苗秋兰
2219310843NaN1401100523882382016/8/2 11:20...2016/8/2 11:33NaNNaNNaN328NaNNaN118688880163张靖雯
231669862NaN1402100326072602016/8/2 11:22...2016/8/2 11:30NaNNaNNaN328NaNNaN118688880005莫子建
2434214502NaN1402100310951092016/8/2 11:58...2016/8/2 12:10NaNNaNNaN328NaNNaN118688880649苗家畅
252609904NaN1421102230293022016/8/2 12:35...2016/8/2 12:53NaNNaNNaN328NaNNaN118688880009张馥雨
2636711194NaN14831004639136392016/8/2 12:58...2016/8/2 13:17NaNNaNNaN330NaNNaN118688880198康雅欣
2736811254NaN1500102121162112016/8/2 13:08...2016/8/2 13:22NaNNaNNaN330NaNNaN118688880317周子轩
283659922NaN460100214661462016/8/2 13:19...2016/8/2 13:29NaNNaNNaN304NaNNaN118688880011姜晗昱
2917114633NaN14031004299102992016/8/2 13:51...2016/8/2 14:00NaNNaNNaN328NaNNaN118688880662范小萱
..................................................................
91538710958NaN14901011551165512016/8/30 12:00...2016/8/30 12:12NaNNaNNaN330NaNNaN118688880307任红娇
9161689902NaN140210031105911052016/8/30 12:07...2016/8/30 12:19NaNNaNNaN328NaNNaN118688880009张馥雨
91744611662NaN1482100314361432016/8/30 18:06...2016/8/30 18:15NaNNaNNaN330NaNNaN118688880231张大鹏
91873511322NaN1481100227082702016/8/30 18:13...2016/8/30 18:18NaNNaNNaN330NaNNaN118688880120陆涛
91967110842NaN1482100316381632016/8/30 19:25...2016/8/30 19:44NaNNaNNaN330NaNNaN118688880104任文琪
92060311023NaN14851006459114592016/8/30 19:30...2016/8/30 19:45NaNNaNNaN330NaNNaN118688880110陶璐
92166110968NaN14921013812138122016/8/30 20:00...2016/8/30 20:18NaNNaNNaN330NaNNaN118688880108卓艳妍
92256511056NaN1489101071787172016/8/30 20:14...2016/8/30 20:30NaNNaNNaN330NaNNaN118688880111黄哲
923539111010NaN1519104023862382016/8/30 20:30...2016/8/30 20:43NaNNaNNaN330NaNNaN118688880312李佩珊
92463610892NaN1480100134993492016/8/30 20:52...2016/8/30 21:10NaNNaNNaN330NaNNaN118688880305王静宇
92546110753NaN1484100530383032016/8/30 21:46...2016/8/30 21:56NaNNaNNaN330NaNNaN118688880101赵玉倩
92677710767NaN14911012824248242016/8/30 21:49...2016/8/30 21:59NaNNaNNaN330NaNNaN118688880201赵倩
92751511612NaN1482100314351432016/8/30 21:57...2016/8/30 22:00NaNNaNNaN330NaNNaN118688880329卢玲
9282899912NaN1402100312151212016/8/31 11:52...2016/8/31 12:01NaNNaNNaN328NaNNaN118688880010麦凯泽
92941910716NaN1489101026462642016/8/31 12:19...2016/8/31 12:29NaNNaNNaN330NaNNaN118688880096姜妮妮
93039510214NaN14851006617136172016/8/31 12:51...2016/8/31 13:02NaNNaNNaN330NaNNaN118688880040叶潇逸
93141110974NaN1485100621422142016/8/31 13:29...NaNNaNNaNNaN330NaNNaN018688880208原程心
9323369962NaN1406100713151312016/8/31 13:59...2016/8/31 14:06NaNNaNNaN328NaNNaN118688880015张昭阳
93350711288NaN15061027474104742016/8/31 17:50...2016/8/31 18:00NaNNaNNaN330NaNNaN218688880318余思言
93476311354NaN1484100529672962016/8/31 18:05...2016/8/31 18:09NaNNaNNaN330NaNNaN118688880121方祥文
93559911028NaN14911012729197292016/8/31 18:05...2016/8/31 18:18NaNNaNNaN330NaNNaN118688880110关凯月
93672111296NaN14861007624156242016/8/31 18:28...2016/8/31 18:42NaNNaNNaN330NaNNaN118688880119夏雪
93753311181NaN14821003717117172016/8/31 18:40...2016/8/31 18:57NaNNaNNaN330NaNNaN118688880215黄青芸
93855110868NaN1519104011011911012016/8/31 19:14...2016/8/31 19:19NaNNaNNaN330NaNNaN118688880304张小雨
93969510966NaN14861007810168102016/8/31 20:25...2016/8/31 20:39NaNNaNNaN330NaNNaN118688880108陈宇
94064110958NaN14921013679126792016/8/31 21:23...2016/8/31 21:31NaNNaNNaN330NaNNaN118688880307李靖
94167210896NaN14891010800248002016/8/31 21:24...2016/8/31 21:56NaNNaNNaN330NaNNaN118688880305莫言
94269211558NaN14921013735107352016/8/31 21:25...2016/8/31 21:33NaNNaNNaN330NaNNaN118688880327习一冰
94364710944NaN1485100626292622016/8/31 21:37...2016/8/31 21:55NaNNaNNaN330NaNNaN118688880207章春华
94457011138NaN15171038589135892016/8/31 21:41...2016/8/31 21:32NaNNaNNaN330NaNNaN118688880313唐雅嘉

945 rows × 21 columns

保存文件

order.to_excel('11.xlsx')

order.to_csv('11.csv')

作业:

  1. 删除表格中取值全部为空值的列 或 取值全部相同的列,删完以后结构为多少?
  2. 该饭店中8月1日一共销售了多少个订单?
  3. 该饭店中8月份第一周共收入多少钱?
  4. 该饭店中一共出售多少种菜品,哪种菜品最受欢迎?【请认真思考返回值是否符合逻辑】
  5. 该饭店中菜品均价为多少?最高价格与最低价格差距多大?

(1) 删除全为空值的列

detail_count = detail.count()
mask = detail_count==0
drop_nan_index = detail_count[mask].index
print(drop_nan_index)
Index(['logicprn_name', 'parent_class_name', 'cost', 'discount_amt',
       'discount_reason', 'kick_back', 'add_info', 'bar_code'],
      dtype='object')
detail.drop(labels=list(drop_nan_index), axis=1, inplace=True)
print(detail.shape)
(2779, 11)

(2)全部为一样的值:

mask2 = detail.astype('str').describe().loc['unique',:] ==1
# mask2 = detail.astype('str').describe().loc['unique',:] ==1
column_ser = pd.Series(list(mask2.index))
print(column_ser)
0            detail_id
1             order_id
2            dishes_id
3          dishes_name
4           itemis_add
5               counts
6              amounts
7     place_order_time
8          add_inprice
9         picture_file
10              emp_id
dtype: object
drop_index_unique = column_ser.loc[mask2.values].values
detail.drop(labels=drop_index_unique, axis=1, inplace=True)
print(detail.shape)
(2779, 9)

2.该饭店中8月1日一共销售了多少个订单?

df = detail.loc[detail['place_order_time'].dt.day==1, :]
# df['order_id'].value_counts().size # 去重
df['order_id'].unique().size
22
  1. 该饭店中8月份第一周共收入多少钱?
detail['pay_num'] = detail['amounts'] * detail['counts']

df2 = detail.loc[detail['place_order_time'].dt.day<8, 'pay_num'].sum()
print(df2)
104568

4.该饭店中一共出售多少种菜品,哪种菜品最受欢迎?【请认真思考返回值是否符合逻辑】

detail['dishes_id'].value_counts()
detail.loc[detail['dishes_id']== 609953, 'dishes_name'].head()
51     凉拌菠菜
99     凉拌菠菜
110    凉拌菠菜
137    凉拌菠菜
202    凉拌菠菜
Name: dishes_name, dtype: object
  1. 该饭店中菜品均价为多少?最高价格与最低价格差距多大?
drop_dishes_index = detail['amounts'].mean()
print(drop_dishes_index)
print(detail['amounts'].ptp())
45.33717164447643
177
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值