S3 选择检索 CSV 中的标头

2024-05-24

我尝试使用以下代码从存储在 S# 存储桶中的 CSV 中获取记录子集:

s3 = boto3.client('s3')
bucket = bucket
file_name = file

sql_stmt = """SELECT S.* FROM s3object S LIMIT 10"""


req = s3.select_object_content(
    Bucket=bucket,
    Key=file,
    ExpressionType='SQL',
    Expression=sql_stmt,
    InputSerialization = {'CSV': {'FileHeaderInfo': 'USE'}},
    OutputSerialization = {'CSV': {}},
)

records = []
for event in req['Payload']:
    if 'Records' in event:
        records.append(event['Records']['Payload'])
    elif 'Stats' in event:
        stats = event['Stats']['Details']


file_str = ''.join(r.decode('utf-8') for r in records)

select_df = pd.read_csv(StringIO(file_str))
df = pd.DataFrame(select_df)
print(df)

这成功地产生了记录,但错过了标头。

我在这里读到S3 选择 CSV 标头 https://stackoverflow.com/questions/50848573/s3-select-csv-headersS3 Select 根本不产生标头。那么,是否可以通过其他方式检索 S3 中 CSV 文件的标头?


Change InputSerialization={'CSV': {"FileHeaderInfo": "Use"}},

TO InputSerialization={'CSV': {"FileHeaderInfo": "NONE"}},

然后,它将打印完整的内容,包括header.

解释:

FileHeaderInfo接受“无”或“使用”或“忽略”之一。

Use NONE选项而不是USE,然后它将打印headerNONE告诉你需要header以及对于processing.

这里是参考。https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.select_object_content https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.select_object_content

我希望它有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

S3 选择检索 CSV 中的标头 的相关文章

  • 如何从Python中的函数返回多个值? [复制]

    这个问题在这里已经有答案了 如何从Python中的函数返回多个变量 您可以用逗号分隔要返回的值 def get name you code return first name last name 逗号表示它是一个元组 因此您可以用括号将值括
  • 在 Django Admin 中调整字段大小

    在管理上添加或编辑条目时 Django 倾向于填充水平空间 但在某些情况下 当编辑 8 个字符宽的日期字段或 6 或 8 个字符的 CharField 时 这确实是一种空间浪费 字符宽 然后编辑框最多可容纳 15 或 20 个字符 我如何告
  • Tensorboard SyntaxError:语法无效

    当我尝试制作张量板时 出现语法错误 尽管开源代码我还是无法理解 我尝试搜索张量板的代码 但不清楚 即使我不擅长Python 我这样写路径C Users jh902 Documents logs因为我正在使用 Windows 10 但我不确定
  • 矩形函数的数值傅里叶变换

    本文的目的是通过一个众所周知的分析傅里叶变换示例来正确理解 Python 或 Matlab 上的数值傅里叶变换 为此 我选择矩形函数 这里报告了它的解析表达式及其傅立叶变换https en wikipedia org wiki Rectan
  • Python 内置的 super() 是否违反了 DRY?

    显然这是有原因的 但我没有足够的经验来认识到这一点 这是Python中给出的例子docs http docs python org 2 library functions html super class C B def method se
  • Amazon S3 - 每个子域有 1 个存储桶和一个文件夹?

    我需要创建一项服务 允许用户在自定义子域中发布静态页面 我从来没有这样做过 所以如果这个问题听起来有点太基本了 请原谅我 为此 我希望将所有这些静态文件托管在 Amazon S3 或 Google 云存储等中 以将其与我的服务器分开 使其可
  • 导入错误:没有名为flask.ext.login的模块

    我的flask login 模块有问题 我已经成功安装了flask login模块 另外 从命令提示符我可以轻松运行此脚本 不会出现错误 Python 2 7 r27 82525 Jul 4 2010 07 43 08 MSC v 1500
  • 未知错误:Chrome 无法启动:异常退出

    当我使用 chromedriver 对 Selenium 运行测试时 出现此错误 selenium common exceptions WebDriverException Message unknown error Chrome fail
  • 通过Python连接到Bigquery:ProjectId和DatasetId必须非空

    我编写了以下脚本来通过 SDK 将 Big Query 连接到 Python 如下所示 from google cloud import bigquery client bigquery Client project My First Pr
  • 将 Matlab 的 datenum 格式转换为 Python

    我刚刚开始从 Matlab 迁移到 Python 2 7 在读取 mat 文件时遇到一些问题 时间信息以 Matlab 的日期数字格式存储 对于那些不熟悉它的人 日期序列号将日历日期表示为自固定基准日期以来已经过去的天数 在 MATLAB
  • 找到一个数字所属的一组范围

    我有一个 200k 行的数字范围列表 例如开始位置 停止位置 该列表包括除了非重叠的重叠之外的所有类型的重叠 列表看起来像这样 3 5 10 30 15 25 5 15 25 35 我需要找到给定数字所属的范围 并对 100k 个数字重复该
  • Protobuf 如何编码 oneof 消息结构

    对于这个 python 程序 在编码时运行 protobuf 编码会给出以下输出 0a 10 08 7f8a 0104 08 02 10 0392 0104 08 02 10 03 18 01 我不明白的是为什么8a后面有一个01 为什么9
  • 带有 LSTM 的 GridSearchCV/RandomizedSearchCV

    我一直在尝试通过 RandomizedSearchCV 调整 LSTM 的超参数 我的代码如下 X train X train reshape X train shape 0 1 X train shape 1 X test X test
  • python 中的“槽包装器”是什么?

    object dict 和其他地方的隐藏方法设置为这样的
  • 制作一份 Python 文档的 PDF 文件

    Python 官方网站提供 PDF 文档下载 但它们是按章节分隔的 我下载了源代码并构建了 PDF 文档 这些文档也是单独的 PDF 我怎么能够从源代码中的 Makefile 构建一个 PDF 文件 我认为这样阅读起来会更方便 如果连接单独
  • Firebase Firestore:获取文档的生成 ID (Python)

    我可以创建一个新文档 带有自动生成的 ID 并存储对其的引用 如下所示 my data key value doc ref db collection u campaigns add my data 我可以像这样访问数据本身 print d
  • 在virtualenv中下载sqlite3

    我正在尝试使用命令创建应用程序python3 manage py startapp webapp但我收到一条错误消息 django core exceptions ImproperlyConfigured 加载时出错 pysqlite2 或
  • 将索引与值交换的最快方法

    考虑pd Series s s pd Series list abcdefghij list ABCDEFGHIJ s A a B b C c D d E e F f G g H h I i J j dtype object 交换索引和值并
  • JSON:TypeError:Decimal('34.3')不是JSON可序列化的[重复]

    这个问题在这里已经有答案了 我正在运行一个 SQL 查询 它返回一个小数列表 当我尝试将其转换为 JSON 时 出现类型错误 查询 res db execute SELECT CAST SUM r SalesVolume 1000 0 AS
  • AFNetworking 2.0:收到 302 到 AWS S3 时 NSURLSessionDownloadTask 被取消

    我使用 README 文件 来自 AFNetworking 2 0 页面 中的一个简单示例来下载图像 对于直接从我的网络服务器提供的图像来说 一切正常 但对于位于 S3 上的网络服务器 Web 服务器会返回 302 重定向以下错误 Erro

随机推荐

  • UIKeyboardFrameBeginUserInfoKey 和 UIKeyboardFrameEndUserInfoKey

    在管理键盘中文档 http developer apple com iphone library documentation StringsTextFonts Conceptual TextAndWebiPhoneOS KeyboardMa
  • TypeConverter 阻止 EntityFramework 中的 ApplyPropertyChanges

    我遇到了一个有趣的问题 希望不仅对我来说有趣 我正在运行 Entity Framework 1 NET 3 5 和 ASP NET MVC 2 我有一个 Customer 类 它与 Country 类具有多对一的关系 换句话说 Countr
  • AlertDialog setButton 已弃用

    我在我的 Eclipse Android 项目中使用此代码 alertDialog setButton OK new DialogInterface OnClickListener Override public void onClick
  • 如何使用ilMerge将dll合并到exe文件中? [复制]

    这个问题在这里已经有答案了 可能的重复 将 dll 与 exe 合并 https stackoverflow com questions 14551311 merging dll with exe 好的 所以 我将 ilmerge 的所有文
  • android以编程方式打开电池设置

    我正在寻找一种从 Android 应用程序打开电池设置屏幕的方法 到目前为止我发现了两个意图 Intent ACTION POWER USAGE SUMMARY Settings ACTION BATTERY SAVER SETTINGS
  • 在类中使用 fstream 时出现问题

    编译时出现以下错误 1 gt c users ra source repos sandbox game gamesetup 1 gamesetup 1 main cpp 15 error C2280 DebugLib DebugLib co
  • model.save() 返回无效输出

    我正在使用本文中的 Node js mongodb 和express 对 REST Api 进行简单测试 MERN 第一部分 使用 Node js 和 Express 构建 RESTful API https medium com week
  • 复制数据透视表格式

    我无法将数据透视表格式复制到新工作表 基本上我想做的是 someRange Copy someOtherRange pasteSpecial xlPasteValues someOtherRange pasteSpecial xlPaste
  • 如何从 VxWorks 中的 RTP 访问内存映射 I/O 设备 (FPGA)?

    使用 VxWorks 时 我们尝试从实时进程访问内存映射 I O 设备 由于 RTP 具有内存保护 我如何从其中访问我的 I O 设备 您可以使用两种方法从 RTP 访问 I O 映射设备 输入 输出子系统 首选 您本质上是创建一个小型设备
  • 自定义 AlertDialog - android.R.id.custom 的问题

    我确信我错过了这里的重点 所以我希望有人能解释一下 我想在用户触摸时创建一个弹出窗口ImageView 我看了一下AlertDialog文档说 如果您想显示更复杂的视图 请查找名为 custom 的 FrameLayout 并将您的视图添加
  • nuxt如何访问javascript文件中的env

    我无法在 nuxt 2 15 之外访问我的环境变量 当我部署时我可以看到 nuxt context config在浏览器中有正确的变量 但在自定义js文件中我无法访问process env baseURL它返回未定义 nuxt config
  • 如何获取对象具有的属性计数?

    我有一个具有许多属性的类 我需要找到一种方法来计算它所具有的属性数量 我想这样做是因为该类读取 CSV 文件 并且如果属性 csvcolumns 的数量小于文件中的列数 则需要发生特殊的事情 这是我的班级的示例 public class S
  • 非静态方法需要一个目标

    private PMS USERS currUser private bool validateUserName dbContext new PmsEntities var validateUser dbContext PMS USERS
  • SQLAlchemy:检查给定值是否在列表中

    问题 在 PostgreSQL 中 检查某个字段是否在给定列表中是使用IN操作员 SELECT FROM stars WHERE star type IN Nova Planet SQLAlchemy 的等价物是什么INSQL查询 我尝试过
  • Python 列表理解不适用于 itertools.groupby 解码

    我正在尝试解码结果itertools groupby到一个值列表中 我的来源是 x 1 2 2 1 6 3 6 5 1 3 最初的方法是使用 for 语句来实现 如下所示 keyfunc itemgetter 0 groups unique
  • 使用 MySQL 计算时间线中的变化

    我是 MySQL 新手 我需要你的帮助 我有一个包含类似数据的表 RobotPosX RobotPosY RobotPosDir RobotShortestPath 0 1 0 2 15 1456 0 2 0 3 30 1456 0 54
  • Xcode如何将目标打包为.framework(而不是.a库)

    我有一个通用框架项目 其中包含一个库作为其主要目标 在产品下是带有 lib 前缀和 a 扩展名的库 请参阅下面的屏幕截图 我正在使用一个第三方项目 其中包含一个框架作为其目标 并且在 产品 下是具有 framework 扩展名的框架 请参阅
  • Firestore 定价 - 集合中的文档数量重要吗?

    我读过文档 https firebase google com docs firestore pricing我需要为我提出的请求金额付费read write or update documents 我也读到过collection价格与阅读相
  • matlab中优先级队列的实现方法

    matlab中有没有提供minpriorityqueue功能的库 import java util PriorityQueue import java util public class MyQueue Comparator
  • S3 选择检索 CSV 中的标头

    我尝试使用以下代码从存储在 S 存储桶中的 CSV 中获取记录子集 s3 boto3 client s3 bucket bucket file name file sql stmt SELECT S FROM s3object S LIMI