精华内容
下载资源
问答
  • Python _Excel操作(删除表中特定行

    万次阅读 2019-08-03 11:02:40
    需求是删除表中符合要求的数据,具体来说就是名字里包含特定字符串的都要删掉。比如名字中包括2D_54019的删除。 在博客上看到一篇,思路是先把excel读下来,保存为字典。在字典里把不要的都删去,然后再写回原...

    因为做项目的时候经常需要操作Excel中的数据,在网上找代码挺麻烦的,记录一下。

    需求是删除表中符合要求的数据,具体来说就是名字里包含特定字符串的都要删掉。比如名字中包括2D_54019的行都删除。
    在这里插入图片描述
    在博客上看到一篇,思路是先把excel读下来,保存为字典。在字典里把不要的都删去,然后再写回原表。写回原表太麻烦了,图省事就重新生成一个excel吧。

    首先是把表保存在字典里。

    def read_excel(bookname,  sheetname):
        # 打开Excel文件
            wb = xlrd.open_workbook(bookname)
            sheet = wb.sheet_by_name(sheetname)
            dic = {}
    
        # 把第一列作为字典的键,一行数据保存为列表,作为字典的值。列表中也包含第一列的值哦
            for i in range(sheet.nrows-1):
                lis = []
                for j in range(sheet.ncols):
                    lis.append(sheet.cell(i+1, j).value)
                dic[sheet.cell(i+1, 0).value] = lis
            return dic
    

    然后就是在字典里筛选数据。我是把名字里包括特定字符串的数据删掉。

    def find_and_delete(dic1, dic2, string):
    
        yaoshanchude = string
        buyaode = []
    
        for i in dic1.keys():
    
            my_str = str(i)
            r1 = yaoshanchude in my_str
    
            if r1:
                
                buyaode.append(i)
    
        for k in buyaode:
    
            dic2.pop(k)
    
        return dic2
    

    因为字典在遍历的过程中不允许修改,无法执行pop操作,所有用了两个字典,这两个字典是相同的(其实是蠢了,一个字典就行,第一个循环都结束了。。。)

    然后就是把字典里的内容写到一张新的Excel表中。

    def write_back(dic):
    
        # 这个参数意思,我也不太明白,反正这么写就对了,字面意思理解即可
        book = xlwt.Workbook(encoding='utf-8', style_compression=0)
        sheet = book.add_sheet('test', cell_overwrite_ok=True)
    
        m = 0
        
        for i in dic.keys():
            # 这个地方是从第二行开始写起了。。。
            m += 1
            n = 0
            for j in dic[i]:
                sheet.write(m, n, j)
                n += 1
    
        book.save('没错,就是我.xls')
    

    呐,就是这么简单(づ ̄ 3 ̄)づ

    展开全文
  • Excel 中如何根据单元格内容删除行

    千次阅读 2018-10-29 18:15:33
    根据单元格内容快速删除行,首先需要选中含有该单元格内容的所有,然后删除。似乎在 Excel 当中除了 VBA 以外没有其他更快捷的...用 Kutools for Excel 删除含有特定单元格内容的   通过查找和替换删除含有特...

    根据单元格内容快速删除行,首先需要选中含有该单元格内容的所有行,然后删除。似乎在 Excel 当中除了 VBA 以外没有其他更快捷的方法能解决这个问题了。这里将推荐几个快速根据单元格内容删除行的方法给你。

    通过查找和替换删除含有特定单元格内容的行

    通过 VBA 代码删除含有特定单元格内容的行

    用 Kutools for Excel 删除含有特定单元格内容的行

     

    通过查找和替换删除含有特定单元格内容的行

    在 Excel 当中,查找和替换功能是非常强大有用的,它也可以用来根据某个特定值删除行。

    1. 按住 Ctrl + F 打开查找和替换对话框,然后在查找内容文本框里输入苹果(苹果就是你想要删除的行所依据的值)。如图所示:

    zh cn excel remove rows based on cell value 1

    2. 点击查找全部, 然后按 Ctrl + A 选中所有找到的结果。如图所示:

    zh cn excel remove rows based on cell value 2

    3. 点击关闭,你就会看到所有含有苹果的单元格都被选中了。右键点击打开右键菜单,选择删除。 如图所示:

    zh cn excel remove rows based on cell value 3

    4. 在删除对话框当中,选择整行

    zh cn excel remove rows based on cell value 4


    arrow blue right bubble 通过 VBA 代码删除含有特定单元格内容的行

    用 VBA 代码快速删除包含特定值的行,可以按照以下步骤来实现:

    Kutools for Excel囊括了120多種快速提升您 Excel 使用效率的工具。 60天內免費试用。

      免费下载Kutools for Excel                                 购买 Kutools for Excel

    1. 选中想要删除行的区域。

    2. 按住 Alt+ F11 打开 Microsoft Visual Basic for applications 窗口,然后点击插入 >> 模块,将下面代码复制粘贴到模块窗口当中。

    VBA 代码: 根据指定单元格内容删除行

    Sub DeleteRows()
    'Updateby20140314
    Dim rng As Range
    Dim InputRng As Range
    Dim DeleteRng As Range
    Dim DeleteStr As String
    xTitleId = "KutoolsforExcel"
    Set InputRng = Application.Selection
    Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
    DeleteStr = Application.InputBox("Delete Text", xTitleId, Type:=2)
    For Each rng In InputRng
        If rng.Value = DeleteStr Then
            If DeleteRng Is Nothing Then
                Set DeleteRng = rng
            Else
                Set DeleteRng = Application.Union(DeleteRng, rng)
            End If
        End If
    Next
    DeleteRng.EntireRow.Delete
    End Sub

    3. 点击 F5 运行代码,在弹出的窗口中选择需要应用代码的区域。

    zh cn excel remove rows based on cell value 5

    4. 点击确定,会弹出另外一个窗口让你选择所依据的单元格,如图所示:

    zh cn excel remove rows based on cell value 6

    5. 点击确定,含有苹果的行就被删除了。

    zh cn excel remove rows based on cell value 7zh cn arrowzh cn excel remove rows based on cell value 8

    但是对于 Excel 初学者而言,通过 VBA 代码就有点复杂。所以接下来介绍一个更简单易懂的方法来依据单元格值删除行。


    arrow blue right bubble 用 Kutools For Excel 删除含有特定单元格内容的行

    如果你已经安装了 Kutools for Excel,通过它的选择指定单元格功能可快速地根据某个特定值删除行。

    Kutools for Excel囊括了120多种快速提升您 Excel 使用效率的工具。60天內免费试用。

     免费下载Kutools for Excel                                 购买 Kutools for Excel

    1. 选中需要根据单元格内容删除行的区域。

    2. 点击 Kutools >> 选择 >> 选择指定单元格。如图所示:

    doc select specific cell

    3. 在选择指定单元格对话框当中,在选择类型中选择整行,然后在指定类型区域选择等于,并在旁边的文本框当中输入你想要依据的值(苹果)。 如图所示:

    zh cn excel remove rows based on cell value 10

    4. 点击确定或者应用,所有单元格值为苹果所在的行都被选中了。

    注意:点击确定以后会弹出一个对话框告诉你有多少行被选中了。

    5. 右键点击选中的行,在右键菜单中点击删除,所有含有苹果这一指定单元格内容的行将被删除。

    zh cn excel remove rows based on cell value 11

    点击这里了解更多关于选择指定单元格的内容。

    点击这里免费下载Kutools for Excel


     


    Is Your Problem Solved?

    Yes, I want to be more efficiency and save time when using Excel          No, the problem persists and I need further support

    Recommended Productivity Tools

    The following tools will greatly save your time and effort, which one do you prefer?
    Office TabUsing handy tabs in your Office, as the way of Chrome, Firefox and New Internet Explorer.
    Kutools for Excel: 120 powerful new functions for Excel, Increase your productivity in 5 minutes. Save two hours every day!
    Classic Menu for OfficeBring back familiar menus to Office 2007, 2010, 2013, 2016, 2019 and 365, as if it were Office 2000 and 2003.


    Kutools For Excel

    gold star1 Amazing! Increase your productivity in 5 minutes. Don't need any special skills, save two hours every day!

    gold star1 More than 200 powerful advanced functions which designed for Excel:

    • Merge Cell/Rows/Columns without Losing Data.
    • Combine and Consolidate Multiple Sheets and Workbooks.
    • Compare Ranges, Copy Multiple Ranges, Convert Text to Date, Unit and Currency Conversion.
    • Count by Colors, Paging Subtotals, Advanced Sort and Super Filter,
    • More Select/Insert/Delete/Text/Format/Link/Comment/Workbooks/Worksheets Tools...

    Screen shot of Kutools for Excel

    展开全文
  • 导入数据 ...conda install -c anaconda xlrd --yes # 安装读Excel文件 df_SanF=pd.read_csv('https://cocl.us/sanfran_crime_dataset') df_SanF.shape #查看数据量 设index 去掉标记 df_SanF...

    导入数据

    import pandas as pd
    import numpy as np`
    !conda install -c anaconda xlrd --yes # 安装读Excel文件
    
    df_SanF=pd.read_csv('https://cocl.us/sanfran_crime_dataset')
    df_SanF.shape #查看数据量
    

    设index 去掉标记行

    df_SanF.set_index(['Category'],inplace=True)
    df_SanF.drop(['NON-CRIMINAL'],inplace=True)
    #去掉 non-criminal 的行
    

    去掉重复的数据

    df_nei=df_SanF.drop_duplicates(['IncidntNum','PdDistrict'],keep='last')
    df_nei.head()
    

    按照某一列计数,reset index 都做为columns

    df_nei=pd.DataFrame(df_SanF['PdDistrict'].value_counts())
    df_nei.reset_index(inplace=True)
    df_nei.columns= ('Neighborhood','Count')
    df_nei
    

    这是未去重的数据
    这是未去重的数据

    热力图

    folium需要安装

    !conda install -c conda-forge folium=0.5.0 --yes # 安装folium
    import folium
    !wget --quiet https://cocl.us/sanfran_geojson -O san-francisco.json
    #安装json文件,包含了sanfrancisco的DISTRICT边界
    print('1')
    

    画图,主要用choropleth

    san_geo = r'san-francisco.json' 
    # create a numpy array of length 6 and has linear spacing from the minium total immigration to the maximum total immigration 设置图例的比例
    threshold_scale = np.linspace(df_nei['Count'].min(),
                                  df_nei['Count'].max(),
                                  6, dtype=int)
    threshold_scale = threshold_scale.tolist() # change the numpy array to a list
    threshold_scale[-1] = threshold_scale[-1] + 1 # make sure that the last value of the list is greater than the maximum immigration
    
    # let Folium determine the scale.
    san_map = folium.Map(location=[37.7749, -122.4194], zoom_start=12) #三番的经纬度
    san_map.choropleth(
        geo_data=san_geo, 
        data=df_nei,
        columns=['Neighborhood', 'Count'],
        key_on='feature.properties.DISTRICT', #json 文件里的名称是 DISTRICT
        threshold_scale=threshold_scale, #之前设置的图例比例
        fill_color='YlOrRd', 
        fill_opacity=0.7, 
        line_opacity=0.2,
        legend_name='Crime Rate in San Francisco',
        reset=True
    )
    san_map
    

    在这里插入图片描述

    展开全文
  • 测试后得到了很多数据,只想查看其中某些特定行该怎么做? 首先在Excel的开始 > 排序和筛选 > 筛选 选择想要tag,反选不想要的,右键删除整行; 接着开始 > 查找和选择 > 定位条件 > 空值,右键...

    测试后得到了很多数据,只想查看其中某些特定行该怎么做?
    在这里插入图片描述

    首先在Excel的开始 > 排序和筛选 > 筛选
    在这里插入图片描述
    选择想要tag,反选不想要的,右键删除整行;
    接着开始 > 查找和选择 > 定位条件 > 空值,右键删除;
    在这里插入图片描述
    即可。

    展开全文
  • 删除excel中列为特定值的所有 # 导入需要用到的相关包 import os import openpyxl #定义删除函数 def delete_row(filename, sheet_name, exc_string, column_num): # 载入工作簿 wb = openpyxl.load_workbook...
  • pandas 删除指定

    万次阅读 2018-03-03 00:18:13
    在处理pandas的...但是如果我们只想要所有内容中不包含特定行的内容,却并没有一个isnotin()方法,经常查找之后,发现只能换种方式使用isin()来实现这个需求。pandas.DataFrame中删除包涵特定字符串所在的行...
  • ps:如果只要删除所有的特定字符(注意不是删除所有),那直接替换为空白就了,不赘述。工具/原料 excel表格方法/步骤1.将需要处理的文本文件内容全部复制到excel表格,如果要处理的是excel文件则忽略这一步骤...
  • #!/usr/bin/python import pandas as pd ...df = pd.read_excel('c:\data\zichan.xlsx') df_sn = pd.read_excel('c:\data\SN.xlsx') sn_series = pd.Series(df_sn['SN'].values) print(sn_series.size) ...
  • 删除DataFrame中特定条件的/列

    千次阅读 2018-08-16 15:52:00
    删除热水器不工作的数据(水流量为0并且开关机状态为“关”的数据。) 1 import pandas as pd 2 data=pd.read_excel('E:\siren\Python dataAnalyst\chapter10\demo\data\original_data.xls',sheetname='原始数据...
  • pandas删除指定详解

    2021-01-20 07:09:32
    pandas.DataFrame中删除包涵特定字符串所在的:https://www.jb51.net/article/159052.htm 以上所述是小编给大家介绍的pandas删除指定详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时...
  • import pandas as pd # usecols=[0,11]读取第0,11列数据 df = pd.read_excel('sipi.xls',encoding='utf-8',usecols=[0,...df.dropna(axis=0, how='any', inplace=True) #axis:0-操作(默认),1-列操作 how:a...
  • pandas删除指定

    万次阅读 2018-08-14 10:29:20
    在处理pandas的DataFrame中,如果想像excel那样筛选,只要其中的某一行或者几行,可以使用isin()方法来实现,只需要将需要的行值以列表...但是如果我们只想要所有内容中不包含特定行的内容,却并没有一个isnotin()...
  • Dataframe删除指定

    千次阅读 2018-12-01 14:51:38
    在处理pandas的DataFrame中,如果...但是如果我们只想要所有内容中不包含特定行的内容,却并没有一个isnotin()方法,经常查找之后,发现只能换种方式使用isin()来实现这个需求。 --------------------- 作者:htb...
  • SAP BPS Web Interface中的Layout控件,不知道如何去改变同列值相同合并的功能,因为要用以前使用的JS来做Save To Excel功能,而我又恰恰不需要开始的两列,所以特定写了一段代码进行列删除...
  • 021招 启动Excel时自动打开特定的工作簿 022招 如何快速打开最近访问的工作簿 023招 如何清除打开文件记录 1.3 视图查看与窗口缩放技巧 024招 如何调整多出的行列打印在同一页 025招 自定义工作表视图 026招 如何...
  • EXCEL函数公式集

    热门讨论 2010-03-16 03:26:38
    快速删除工作表中的空行快速删除空行一次删完Excel里面多出很多的空白 每30行为一页并加上一个标题如何实现如何实现隔行都加上标题项 如何把标签页去掉的? 去掉默认的表格线(网线)表格的框线 列标的标识变了 符号...
  • EXCEL 2007 宝典 10/10

    2012-03-31 22:37:02
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 9/10

    2012-03-31 22:35:46
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 8/10

    2012-03-31 22:26:48
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 7/10

    2012-03-31 22:17:34
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 6/10

    2012-03-31 22:08:39
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 5/10

    2012-03-31 21:59:23
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 4/10

    2012-03-31 21:50:16
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 3/10

    2012-03-31 21:39:31
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 2/10

    2012-03-31 21:30:10
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • EXCEL 2007 宝典 1/10

    2012-03-31 21:16:22
     5.3.1 创建与删除Excel表  5.3.2 创建表时套用表格格式  5.3.3 对现有表应用表样式  5.3.4 创建与删除自定义表样式  5.3.5 清除表样式  5.3.6 设置表样式选项 5.4 单元格样式  5.4.1 应用单元格样式  5.4.2...
  • Excel 自动生成序号公式

    千次阅读 2012-05-17 10:04:53
    excel 自动生成序号的问题 excel 自动生成序号的问题(有些是多行合并的)  方法是:在a1中填1  从上往下选中下面需填充...如果使用“剪切”命令,或是插入或删除行或列使该单元格发生了移动,则单元格引用
  • 数据工具 datatools提供了各种命令行程序,用于处理不同格式的数据以及简化Posix Shell脚本(例如,编写在Bash下运行的脚本)。...用于将命令行参数格式化为行的CSV列或为特定行过滤CSV的工具 用于将JS
  • 6,获取特定列的最后一个有效索引*** 个人感觉这点比较好 背景: 基于VAB宏 C++接口 备注: 未检测内存泄漏。 适用前确保CoInitialize(NULL)被调用。适用后释放CoUninitialize(); 环境: WinXP+VC6 里边几个类不数...

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 216
精华内容 86
关键字:

excel删除特定行