Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在python中,在大熊猫的工作表中将值写入特定的单元格

在python中,在大熊猫的工作表中将值写入特定的单元格
EN

Stack Overflow用户
提问于 2016-10-01 02:46:17
回答 4查看 83.7K关注 0票数 20

我有一个excel表,它已经在一些单元格中有了一些值。

代表前任:-

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        A      B      C      D
1      val1   val2          val3
2             valx   valy        

我想让熊猫写到特定的细胞上,而不接触任何其他的细胞,薄片等

这是我试过的密码。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd
from openpyxl import load_workbook

df2 = pd.DataFrame({'Data': [13, 24, 35, 46]})
book = load_workbook('b.xlsx')
writer = pd.ExcelWriter('b.xlsx', engine='openpyxl')

df2.to_excel(writer, "Sheet1", startcol=7,startrow=6)

writer.save()

但是,此代码删除旧的单元格值。

我已经回复到:- How to write to an existing excel file without overwriting data (using pandas)?,但是这个解决方案不起作用。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-10-15 06:51:41

我不能用熊猫来做我在问题中要求做的事情,但是我能够用Openpyxl来解决这个问题。

我将编写一些有助于实现所要求的内容的代码片段。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import openpyxl

# to open the excel sheet and if it has macros
srcfile = openpyxl.load_workbook('docname.xlsx', read_only=False, keep_vba=True)

# get sheetname from the file
sheetname = srcfile.get_sheet_by_name('sheetname')
# write something in B2 cell of the supplied sheet
sheetname['B2'] = str('write something')
# write to row 1,col 1 explicitly, this type of writing is useful to
# write something in loops
sheetname.cell(row=1, column=1).value = 'something'

# save it as a new file, the original file is untouched and here I am saving
# it as xlsm(m here denotes macros).
srcfile.save('newfile.xlsm')

因此Openpyxl写入一个紫色的单元格,而不接触其他的工作表、单元格等等。它基本上是写到一个新的文件中,涉及到原始文件的属性。

票数 12
EN

Stack Overflow用户

发布于 2016-10-01 04:58:18

UPDATE2:将数据附加到现有的Excel表,保存其他(旧的)工作表:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd
from openpyxl import load_workbook

fn = r'C:\Temp\.data\doc.xlsx'

df = pd.read_excel(fn, header=None)
df2 = pd.DataFrame({'Data': [13, 24, 35, 46]})

writer = pd.ExcelWriter(fn, engine='openpyxl')
book = load_workbook(fn)
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

df.to_excel(writer, sheet_name='Sheet1', header=None, index=False)
df2.to_excel(writer, sheet_name='Sheet1', header=None, index=False,
             startcol=7,startrow=6)

writer.save()

更新:文件没有标题,因此您应该相应地处理它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
In [57]: df = pd.read_excel(fn, header=None)

In [58]: df
Out[58]:
     0    1
0  abc  def
1  ghi  lmn

In [59]: df2
Out[59]:
   Data
0    13
1    24
2    35
3    46

In [60]: writer = pd.ExcelWriter(fn)

In [61]: df.to_excel(writer, header=None, index=False)

In [62]: df2.to_excel(writer, startcol=7,startrow=6, header=None, index=False)

In [63]: writer.save()

旧答案:

您可以使用以下技巧:

首先,将excel文件的现有内容读入新的DF:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
In [17]: fn = r'C:\Temp\b.xlsx'

In [18]: df = pd.read_excel(fn)

In [19]: df
Out[19]:
       A      B     C      D
0   val1    NaN  val3   val4
1  val11  val22   NaN  val33

现在我们可以将它写回并附加一个新的DF2:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
In [20]: writer = pd.ExcelWriter(fn)

In [21]: df.to_excel(writer, index=False)

In [22]: df2.to_excel(writer, startcol=7,startrow=6, header=None)

In [23]: writer.save()

票数 18
EN

Stack Overflow用户

发布于 2019-01-28 04:49:55

使用熊猫读取excel并追加文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def getpayment_excel(request):
    df = pd.read_excel(open(str(settings.MEDIA_ROOT)+"/"+"details.xlsx", 'rb'), sheetname='Sheet1')
    XLSX_MIME = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
    response = HttpResponse(content_type=XLSX_MIME)
    response['Content-Disposition'] = 'attachment; filename="PythonExport.xlsx"'
    writer = pd.ExcelWriter(response, engine='xlsxwriter')
    df.loc[0,'Bank Name'] = "ICICIW"
    df.to_excel(writer, 'Sheet1', index=False)
    writer.save()
    return response
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39805677

复制
相关文章
Excel公式技巧14: 在主工作表中汇总多个工作表中满足条件的值
我们可能熟悉使用INDEX、SMALL等在给定单列或单行数组的情况下,返回满足一个或多个条件的值的列表。这是一项标准的公式技术。
fanjy
2020/03/12
9.1K0
[Office] 在Excel中,如何根据值求出其在表中的坐标
在使用excel的过程中,我们知道,根据一个坐标我们很容易直接找到当前坐标的值,但是如果知道一个坐标里的值,反过来求该点的坐标的话,据我所知,excel没有提供现成的函数供使用,所以需要自己用VBA编写函数使用 (代码来自互联网)
轻舞飞扬SR
2021/02/24
8.8K0
Excel公式技巧54: 在多个工作表中查找最大值/最小值
要在Excel工作表中获取最大值或最小值,我们马上就会想到使用MAX/MIN函数。例如,下图1所示的工作表,使用公式:
fanjy
2020/09/17
11.7K0
Excel公式技巧54: 在多个工作表中查找最大值/最小值
Python中将变量按行写入txt文本中
在'w'写入模式下,当我们下次写入变量时,会覆盖原本txt文件的内容,这肯定不是我们想要的。TXT有一个追加模式'a',可以实现多次写入:
py3study
2020/01/10
7.5K0
Python中将变量按行写入txt文本中
使用VBA在工作表中列出所有定义的名称
有时候,工作簿中可能有大量的命名区域。然而,如果名称太多,虽然有名称管理器,可能名称的命名也有清晰的含义,但查阅起来仍然不是很方便,特别是想要知道名称引用的区域时,如果经常要打开名称管理器查找命名区域,会非常麻烦,也浪费时间。
fanjy
2022/11/16
6.5K0
在特定环境中安装指定版本的Docker
通常用官方提供的安装脚本或软件源安装都是安装的比较新 Docker 版本,有时我们需要在一些特定环境的服务器上安装指定版本的 Docker。今天我们就来讲一讲如何安装指定版本的 Docker 。
子润先生
2021/06/18
3.9K0
mysql学习—查询数据库中特定的值对应的表
遇到一个问题,我将问题抽象简单描述如下: 循环查询数据库所有表,查出字段中包含tes值的表,并且将test修改为hello? 因为自己不才找了很久也没有找到很好的方法,又对mysql的游标等用法不是很了解,在时间有限的情况下,发现了下面的方法,分享给大家: 1:查找 (1)使用工具 我使用的mysql的Navicat for MySQL的工具
全栈程序员站长
2022/07/19
7.5K0
mysql学习—查询数据库中特定的值对应的表
Excel公式技巧17: 使用VLOOKUP函数在多个工作表中查找相匹配的值(2)
我们给出了基于在多个工作表给定列中匹配单个条件来返回值的解决方案。本文使用与之相同的示例,但是将匹配多个条件,并提供两个解决方案:一个是使用辅助列,另一个不使用辅助列。
fanjy
2020/03/12
14.1K0
Excel公式技巧16: 使用VLOOKUP函数在多个工作表中查找相匹配的值(1)
在某个工作表单元格区域中查找值时,我们通常都会使用VLOOKUP函数。但是,如果在多个工作表中查找值并返回第一个相匹配的值时,可以使用VLOOKUP函数吗?本文将讲解这个技术。
fanjy
2020/03/12
25.7K0
Excel公式技巧94:在不同的工作表中查找数据
很多时候,我们都需要从工作簿中的各工作表中提取数据信息。如果你在给工作表命名时遵循一定的规则,那么可以将VLOOKUP函数与INDIRECT函数结合使用,以从不同的工作表中提取数据。这项技术可以节省时间,提高效率。
fanjy
2021/07/12
13.1K0
在字符串中删除特定的字符
题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。 首先我们考虑如何在字符串中删除一个字符。由于字符串的内存分配方式是连续分配的。我们从字符串当中删除一个字符,需要把后面所有的字符往前移动一个字节的位置。但如果每次删除都需要移动字符串后面的字符的话,对于一个长度为n的字符串而言,删除一个字符的时间复杂度为O(n)。而对于本题而言,有可能要删除的字符的个数是n,因此该
猿人谷
2018/01/17
9K0
Flink 表值聚合操作在 Dlink 的实践
Flink 具有强大的自定义函数功能,最新的 1.13 版本新增了 Async Table Functions。而其已有的 Table Aggregate Functions 只能在 Table API 中使用,无法 FlinkSQL 中进行定义。于是,成为 Apache Flink 的最佳伙伴的目标,正推动着 Dlink 试图实现该特性。
文末丶
2021/12/27
1.4K0
Flink 表值聚合操作在 Dlink 的实践
在IT开发中工作种类的分类
可能很多同学在学习python之前都听说过什么:前端程序员,后端程序员,安全工程师,运维,爬虫,全栈程序员等等各种各样的头衔名称,搞得大家都不知道该怎么选择了。我当初学编程之前也有过类似的经历,所以这里我尽可能给大家解释明白。
python自学网
2021/11/27
9520
在IT开发中工作种类的分类
python在mysql中插入null空值
python在mysql中插入null空值 sql = “INSERT INTO MROdata (MmeUeS1apId) VALUES (%s)”%‘NULL’ %s没有引号,可以将“null”中null写进数据库,达到NULL值效果。
kirin
2020/12/03
8.2K0
程序在特定条件下不知疲倦工作?Python这么强?
感谢访问零基础Python学习教程系列,今天我们来学习Python中的循环,周期循环赋予程序重复做事情的能力,这样程序就可以在特定条件下不知疲倦地工作。
马哥linux运维
2019/09/06
5470
程序在特定条件下不知疲倦工作?Python这么强?
在 Python 中将数值变量转换为分类变量
这篇文章是今天发布的CTGAN的补充,我们可以使用pandas的cut函数将数据进行离散化、将连续变量进行分段汇总,这比写自定义函数要简单的多。
deephub
2021/11/16
2.1K0
快速在Python中实现数据透视表
几年前,我看到有人在推特上说自己是一个excel专家,然后他们的老板让他们做一个透视表。根据这条推文,那个人立刻惊慌失措,辞掉了工作。这条推文很有趣,我能理解,因为一开始,它们可能会令人困惑,尤其是在excel中。但是不用害怕,数据透视表非常棒,在Python中,它们非常快速和简单。数据透视表是数据科学中一种方便的工具。任何开始数据科学之旅的人都应该熟悉它们。让我们快速地看一下这个过程,在结束的时候,我们会消除对数据透视表的恐惧。
HuangWeiAI
2021/08/24
3K0
快速在Python中实现数据透视表
Python 读取 Excel 中符合特定条件的数据,并写入新的表格
原始表格 代码 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/3/20 21:24 # @Author : cunyu # @Site : cunyu1943.github.io # @File : LimitedInfo.py # @Software: PyCharm import xlrd import xlwt file = '网易新闻.xls' data = xlrd.open_workbook(
村雨遥
2022/06/15
1.8K0
Python 读取 Excel 中符合特定条件的数据,并写入新的表格
在mysql中order by是怎样工作的?
还有一种就是通过rowId 排序(这种情况是当一行数据过大的时候) 直接上 流程图 :
袁新栋-jeff.yuan
2020/08/26
2.4K0
在mysql中order by是怎样工作的?
哈希表及在iOS中的应用
哈希表(Hash table,也叫散列表),是根据关键码值而直接进行访问的数据结构,是一块连续的存储空间。
conanma
2021/10/28
2.1K0

相似问题

Python:在MSSQL中将值写入表

10

在Python中将值动态写入Excel中的单元格

04

使用python写入特定的Excel工作表

210

在OpenXML中将值写入空单元格

12

在python中写入具有特定列值的特定行

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文