我正在将CSV文件读入DataFrame.我需要从所有类似字符串的单元格中删除空格,而在Python 2.7中保留其他单元格不变.
这是我正在做的事情:
def remove_whitespace( x ):
if isinstance( x, basestring ):
return x.strip()
else:
return x
my_data = my_data.applymap( remove_whitespace )
Run Code Online (Sandbox Code Playgroud)
Pandas有没有比这更好或更惯用的方法呢?
是否有更有效的方式(也许是通过列方式做事)?
我试过寻找一个明确的答案,但是关于这个主题的大多数问题似乎是如何从列名本身中去除空格,或者假设单元格都是字符串.
编辑:我重写了这个问题,以澄清我所追求的内容 - 感谢迄今为止帮助我磨练它的人们.
我试图了解如何最好地在React中管理复杂的嵌套状态,同时还限制render()
内容未更改的组件的调用次数.
作为背景:
假设我在这样的对象中有"作者"和"出版物"的状态:
{
'authors' : {
234 : {
'name' : 'Alice Ames',
'bio' : 'Alice is the author of over ...',
'profile_pic' : 'http://....'
},
794 : {
'name' : 'Bob Blake',
'bio' : 'Hailing from parts unknown, Bob...',
'profile_pic' : 'http://....'
},
...more authors...
},
'publications' : {
539 : {
'title' : 'Short Story Vol. 2',
'author_ids' : [ 234, 999, 220 ]
},
93 : {
'title' : 'Mastering Fly …
Run Code Online (Sandbox Code Playgroud) 我正在开发一个可重用的Python模块(如果重要的话,用于Python 2.7).我想知道对于希望将我的模块包含在具有自己的日志记录方法的更大框架中的其他人来说,最佳实践是什么.
是否有标准方法在我的模块中设置日志记录以使用外部调用程序定义的任何记录器?
我正在使用django-import-export来处理上传到我的Django管理站点的CSV文件.
当我在本地机器上运行Django时,一切正常.
当我将我的应用程序部署到Heroku时,我开始收到与tmpfile访问相关的错误:
Feb 24 14:35:12 test-staging app/web.3: ERROR 2017-02-24 22:35:12,143 base 14 139687073408832 Internal Server Error:
....
Feb 24 14:35:12 test-staging app/web.3: File "/app/.heroku/python/lib/python2.7/site-packages/import_export/admin.py", line 163, in process_import
Feb 24 14:35:12 test-staging app/web.3: data = tmp_storage.read(input_format.get_read_mode())
Feb 24 14:35:12 test-staging app/web.3: File "/app/.heroku/python/lib/python2.7/site-packages/import_export/tmp_storages.py", line 42, in read
Feb 24 14:35:12 test-staging app/web.3: with self.open(mode=mode) as file:
Feb 24 14:35:12 test-staging app/web.3: File "/app/.heroku/python/lib/python2.7/site-packages/import_export/tmp_storages.py", line 31, in open
Feb 24 14:35:12 test-staging app/web.3: return open(self.get_full_path(), mode)
Feb 24 …
Run Code Online (Sandbox Code Playgroud) 我试图通过Amazon Kinesis(每秒订购10,000点)抽取大量数据.
为了通过我的分片每秒最大化记录,我想通过分片循环我的请求(我的应用程序逻辑不关心单个消息的分片是什么).
我似乎可以使用ExplicitHashKey参数为我发送到PutRecords端点的列表中的消息执行此操作 - 但是Amazon文档实际上并没有描述如何使用ExplicitHashKey,除了以下的oracular语句:
http://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecords.html
Records数组中的每个记录可能包含一个可选参数ExplicitHashKey,它将分区键覆盖为分片映射.此参数允许数据生产者明确确定存储记录的分片.有关更多信息,请参阅Amazon Kinesis Streams开发人员指南中的使用PutRecords添加多个记录.
(上面文档中的声明有一个链接到文档的另一部分,它根本不讨论ExplicitHashKeys).
有没有办法使用ExplicitHashKey在分片之间循环数据?
参数的有效值是多少?