Tag: pandas

pandas:链接作业

我一直在阅读“回到一个副本”的链接。 我真的不知道pandas的链接赋值概念是如何工作的,以及.ix() .iloc()或.loc()如何影响它。 对于以下代码行,我得到了SettingWithCopyWarning警告,其中data是pandas数据框, amount是该data SettingWithCopyWarning的列(系列)名称: data['amount'] = data['amount'].astype(float) data["amount"].fillna(data.groupby("num")["amount"].transform("mean"), inplace=True) data["amount"].fillna(mean_avg, inplace=True) 看这个代码,显而易见,我做了一些不理想的事情? 如果是这样,你能让我知道更换代码行吗? 我知道下面的警告,并且认为我的警告是误报: 链接的赋值警告/例外旨在通知用户可能无效的赋值。 可能有误报; 无意中报告链接任务的情况。 编辑:导致第一个复制警告错误的代码。 data['amount'] = data.apply(lambda row: function1(row,date,qty), axis=1) data['amount'] = data['amount'].astype(float) def function1(row,date,qty): try: if(row['currency'] == 'A'): result = row[qty] else: rate = lookup[lookup['Date']==row[date]][row['currency'] ] result = float(rate) * float(row[qty]) return result except ValueError: # generic exception […]

pandas写数据框到CSV文件

我有一个pandas数据框,我想写入一个CSV文件。 我正在使用: df.to_csv('out.csv') 并得到错误: UnicodeEncodeError: 'ascii' codec can't encode character u'\u03b1' in position 20: ordinal not in range(128) 有没有什么办法可以轻松解决这个问题(即我的数据框中有unicode字符)? 有没有办法写一个制表符分隔的文件,而不是一个CSV使用例如一个“标签”方法(我不认为存在)?

pandas:如何将应用函数用于多列

在使用多列与下面的数据框时,pandas应用函数有一些问题 df = DataFrame ({'a' : np.random.randn(6), 'b' : ['foo', 'bar'] * 3, 'c' : np.random.randn(6)}) 和以下function def my_test(a, b): return a % b 当我尝试应用这个function: df['Value'] = df.apply(lambda row: my_test(row[a], row[c]), axis=1) 我收到错误消息: NameError: ("global name 'a' is not defined", u'occurred at index 0') 我不明白这个消息,我正确定义了这个名字。 我非常感谢在这个问题上的任何帮助 更新 谢谢你的帮助。 我确实在代码中犯了一些语法错误,索引应该放在''。 不过,我仍然使用一个更复杂的function相同的问题,如: def my_test(a): cum_diff = 0 […]

有没有办法(漂亮)打印整个pandas系列/dataframe?

我在terminal上使用了Series和DataFrames。 一个Series的默认__repr__返回一个减less的样本,有一些头部和尾部的值,但其余的缺失。 是否有内置的方式来漂亮地打印整个系列/dataframe? 理想情况下,它将支持正确的alignment,也许列之间的边界,甚至可能为不同的列进行颜色编码。

将Pandas GroupBy对象转换为DataFrame

我从这样的input数据开始 df1 = pandas.DataFrame( { "Name" : ["Alice", "Bob", "Mallory", "Mallory", "Bob" , "Mallory"] , "City" : ["Seattle", "Seattle", "Portland", "Seattle", "Seattle", "Portland"] } ) 当打印时显示为: City Name 0 Seattle Alice 1 Seattle Bob 2 Portland Mallory 3 Seattle Mallory 4 Seattle Bob 5 Portland Mallory 分组非常简单: g1 = df1.groupby( [ "Name", "City"] ).count() 并打印产生一个GroupBy对象: […]

如何将数据分成3组(火车,validation和testing)?

我有一个pandas数据框,我希望把它分成3个独立的集合。 我知道使用sklearn.cross_validation中的sklearn.cross_validation ,可以将数据分成两组(train和test)。 不过,我找不到将数据分成三组的解决scheme。 最好是我想要有原始数据的索引。 我知道一个解决方法是使用train_test_split两次,并以某种方式调整索引。 但有没有更多的标准/内置的方式将数据分成3组而不是2?

在pandas / python中结合数据框中的两列文本

我有一个使用pandaspython 20 x 4000数据框。 其中两列被命名为年份和季度。 我想创build一个名为period的variables,使Year = 2000和Quarter = q2成为2000q2 任何人都可以帮忙吗?

在Pythonpandas现有的DataFrame中添加新的列

我有以下索引的DataFrame与命名的列和行不连续的数字: abcd 2 0.671399 0.101208 -0.181532 0.241273 3 0.446172 -0.243316 0.051767 1.577318 5 0.614758 0.075793 -0.451460 -0.012493 我想添加一个新的列'e'到现有的数据框,并不想改变数据框中的任何东西(即,新列的长度始终与DataFrame的长度相同)。 0 -0.335485 1 -1.166658 2 -0.385571 dtype: float64 我尝试了不同版本的join , append , merge ,但我没有得到我想要的结果,只有最多的错误。 我如何添加列e到上面的例子?

pandasto_html()截断string内容

我有一个包含文本数据的Python Pandas DataFrame对象。 我的问题是,当我使用to_html()函数时,它会截断输出中的string。 例如: import pandas df = pandas.DataFrame({'text': ['Lorem ipsum dolor sit amet, consectetur adipiscing elit.']}) print (df.to_html()) 输出被截断在adapis… <table border="1" class="dataframe"> <thead> <tr style="text-align: right;"> <th></th> <th>text</th> </tr> </thead> <tbody> <tr> <th>0</th> <td> Lorem ipsum dolor sit amet, consectetur adipis…</td> </tr> </tbody> </table> SO有一个相关的问题,但它使用占位符和search/replacefunction来后处理HTML,我想避免: 将pandas数据框的全部内容写入HTML表格 有一个更简单的解决这个问题? 我找不到任何相关的文件 。

ValueError:numpy.dtype的大小错误,请尝试重新编译

我只是在我的Python 2.7上安装了pandas和statsmodels包当我尝试“导入pandas作为PD”,这个错误信息出来。 谁能帮忙? 谢谢!!! numpy.dtype has the wrong size, try recompiling Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\formula\__init__.py", line 4, in <module> from formulatools import handle_formula_data File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\formula\formulatools.p y", line 1, in <module> import statsmodels.tools.data as data_util File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\tools\__init__.py", li ne 1, in <module> from tools import add_constant, categorical […]