我使用pandas.to_datetime来parsing数据中的date。 即使date全部是每日,大pandas默认代表datetime64[ns]的date。 我想知道是否有一个优雅的/巧妙的方式将date转换为datetime.date或datetime64[D]以便在将数据写入CSV时,date不会附加00:00:00 。 我知道我可以手动转换types的元素: [dt.to_datetime().date() for dt in df.dates] 但是,由于我有很多行,所以这非常慢,而这种做法pandas.to_datetime使用pandas.to_datetime的目的。 有没有办法一次转换整个列的dtype ? 或者, pandas.to_datetime支持精确的规范,以便在处理日常数据时可以摆脱时间部分?
这里是代码: >>> z = u'\u2022'.decode('utf-8', 'ignore') Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.6/encodings/utf_8.py", line 16, in decode return codecs.utf_8_decode(input, errors, True) UnicodeEncodeError: 'latin-1' codec can't encode character u'\u2022' in position 0: ordinal not in range(256) 为什么我在使用.decode时引发UnicodeEncodeError? 为什么我在使用“忽略”时出现错误?
下面的代码引发了一个KeyErrorexception: addr_list_formatted = [] addr_list_idx = 0 for addr in addr_list: # addr_list is a list addr_list_idx = addr_list_idx + 1 addr_list_formatted.append(""" "{0}" { "gamedir" "str" "address" "{1}" } """.format(addr_list_idx, addr)) 为什么? 我正在使用Python 3.1。
我有一个创build两个或多个subprocess的主进程,我希望主进程等到所有subprocess完成其操作并退出? # main_script.py p1 = subprocess.Popen(['python script1.py']) p2 = subprocess.Popen(['python script2.py']) … #wait main process until both p1, p2 finish …
我有一个名为foo-bar.py的破折号的现有python模块 改变模块名称是我宁愿避免的,因为模块是共享的,我将不得不追逐所有使用它的地方,以便我的特殊情况将起作用。 有没有办法加载名称中包含通常被禁止的' – '的模块? (我明白这不是最佳做法,但是对于这种情况,我不想重新devise和testing更多的应用程序,我也不认为我的公司主人会赞成我花时间去实施这样的改变。)
假设df是一个pandasDataFrame。 我想查找数字types的所有列。 就像是: isNumeric = is_numeric(df)
我有一个巨大的表,我需要处理它的所有行。 我总是得到这个丢失的连接消息,我无法重新连接并将光标恢复到最后的位置。 这基本上是我在这里的代码: # import MySQLdb class DB: conn = None def connect(self): self.conn = MySQLdb.connect('hostname', 'user', '*****', 'some_table', cursorclass=MySQLdb.cursors.SSCursor) def query(self, sql): try: cursor = self.conn.cursor() cursor.execute(sql) except (AttributeError, MySQLdb.OperationalError): self.connect() cursor = self.conn.cursor() cursor.execute(sql) return cursor # # db = DB() sql = "SELECT bla FROM foo" data = db.query(sql) for row in […]
这是我想要执行的一小段代码: >>> from datetime import * >>> item_date = datetime.strptime('7/16/10', "%m/%d/%y") >>> from_date = date.today()-timedelta(days=3) >>> print type(item_date) <type 'datetime.datetime'> >>> print type(from_date) <type 'datetime.date'> >>> if item_date > from_date: … print 'item is newer' … Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: can't compare datetime.datetime to datetime.date 我似乎无法比较date和date时间值。 什么是比较这些最好的方法? […]
我有这个错误很长一段时间,但无法弄清楚: 在呈现时捕获TypeError:强制为Unicode:需要string或缓冲区,findNoneType 这发生在pipe理员,当我尝试添加或修改我的一个模型(显示工作正常) 这是模型: class PS(models.Model): id_ps = models.IntegerField(null=True) client = models.ForeignKey(Client, null=True, blank=True) nom_du_site = models.CharField(max_length=250) rue_livraison = models.TextField(null=True) complement_adresse = models.TextField(null=True) code_postal_livraison = models.CharField(max_length=50, null=True) ville_livraison = models.CharField(max_length=200, null=True) pays_livraison = models.CharField(max_length=200, null=True) distributeur = models.CharField(max_length=50, null=True) tarif = models.CharField(max_length=250, null=True) type_tarif = models.CharField(max_length=50, null=True) type_installation = models.CharField(max_length=50, null=True) def __unicode__(self): return self.nom_du_site […]
给定一个带有JSONField的Django模型,使用Django Rest Framework序列化和反序列化的正确方法是什么? 我已经试过创build一个自定义的serializers.WritableField并覆盖to_native和from_native : from json_field.fields import JSONEncoder, JSONDecoder from rest_framework import serializers class JSONFieldSerializer(serializers.WritableField): def to_native(self, obj): return json.dumps(obj, cls = JSONEncoder) def from_native(self, data): return json.loads(data, cls = JSONDecoder) 但是当我尝试使用partial=True更新模型时,JSONField对象中的所有浮点数都变成了string。