Questions tagged «pandas»

Pandas是用于数据处理和分析的Python库,例如,在统计,实验科学结果,计量经济学或金融学中常见的数据框,多维时间序列和横截面数据集。Pandas是Python中主要的数据科学库之一。

6
检查pandas数据框索引中是否存在值
我敢肯定有一个明显的方法可以做到这一点,但是现在还不能想到任何光滑的东西。 基本上不是引发异常,而是要获取True或False查看pandas df索引中是否存在值。 import pandas as pd df = pd.DataFrame({'test':[1,2,3,4]}, index=['a','b','c','d']) df.loc['g'] # (should give False) 我现在工作的是以下内容 sum(df.index == 'g')
139 python  pandas  ipython 

6
网址中的熊猫read_csv
我将Python 3.4与IPython结合使用,并具有以下代码。我无法从给定的URL读取csv文件: import pandas as pd import requests url="https://github.com/cs109/2014_data/blob/master/countries.csv" s=requests.get(url).content c=pd.read_csv(s) 我有以下错误 “预期的文件路径名或类文件对象,得到类型” 我怎样才能解决这个问题?
138 python  csv  pandas  request 

6
熊猫:设置编号。最大行数
我在查看以下内容时遇到问题DataFrame: n = 100 foo = DataFrame(index=range(n)) foo['floats'] = np.random.randn(n) foo 问题是它不会在ipython笔记本中默认情况下不打印所有行,但是我必须切片才能查看结果行。甚至以下选项也不会更改输出: pd.set_option('display.max_rows', 500) 有谁知道如何显示整个数组?

7
查找名称包含特定字符串的列
我有一个带有列名称的数据框,我想找到一个包含特定字符串但与之不完全匹配的数据框。我在寻找'spike'列名喜欢'spike-2','hey spike','spiked-in'(该'spike'部分总是连续)。 我希望列名以字符串或变量的形式返回,因此我以后可以使用df['name']或df[name]照常访问列。我试图找到方法,但没有成功。有小费吗?

5
熊猫数据框获取每个组的第一行
我有DataFrame下面的熊猫。 df = pd.DataFrame({'id' : [1,1,1,2,2,3,3,3,3,4,4,5,6,6,6,7,7], 'value' : ["first","second","second","first", "second","first","third","fourth", "fifth","second","fifth","first", "first","second","third","fourth","fifth"]}) 我想通过[“ id”,“ value”]对此分组,并获得每个分组的第一行。 id value 0 1 first 1 1 second 2 1 second 3 2 first 4 2 second 5 3 first 6 3 third 7 3 fourth 8 3 fifth 9 4 second 10 4 fifth …
137 python  pandas  dataframe 

6
用sklearn缩放的pandas数据框列
我有一个带有混合类型列的pandas数据框,我想将sklearn的min_max_scaler应用于某些列。理想情况下,我想就地进行这些转换,但还没有找到一种方法来进行。我编写了以下有效的代码: import pandas as pd import numpy as np from sklearn import preprocessing scaler = preprocessing.MinMaxScaler() dfTest = pd.DataFrame({'A':[14.00,90.20,90.95,96.27,91.21],'B':[103.02,107.26,110.35,114.23,114.68], 'C':['big','small','big','small','small']}) min_max_scaler = preprocessing.MinMaxScaler() def scaleColumns(df, cols_to_scale): for col in cols_to_scale: df[col] = pd.DataFrame(min_max_scaler.fit_transform(pd.DataFrame(dfTest[col])),columns=[col]) return df dfTest A B C 0 14.00 103.02 big 1 90.20 107.26 small 2 90.95 110.35 …


4
熊猫加入问题:列重叠但未指定后缀
我有以下2个数据帧: df_a = mukey DI PI 0 100000 35 14 1 1000005 44 14 2 1000006 44 14 3 1000007 43 13 4 1000008 43 13 df_b = mukey niccdcd 0 190236 4 1 190237 6 2 190238 7 3 190239 4 4 190240 7 当我尝试加入这两个数据框时: join_df = df_a.join(df_b,on='mukey',how='left') 我得到错误: …
136 python  join  pandas 

6
如何将tsv文件加载到Pandas DataFrame中?
我是python和pandas的新手。我正在尝试将tsv文件加载到熊猫中DataFrame。 这是我正在尝试的错误: >>> df1 = DataFrame(csv.reader(open('c:/~/trainSetRel3.txt'), delimiter='\t')) Traceback (most recent call last): File "<pyshell#28>", line 1, in <module> df1 = DataFrame(csv.reader(open('c:/~/trainSetRel3.txt'), delimiter='\t')) File "C:\Python27\lib\site-packages\pandas\core\frame.py", line 318, in __init__ raise PandasError('DataFrame constructor not properly called!') PandasError: DataFrame constructor not properly called!
136 python  pandas  csv 

8
熊猫将列表的一列分为多列
我有一列的pandas DataFrame: import pandas as pd df = pd.DataFrame( data={ "teams": [ ["SF", "NYG"], ["SF", "NYG"], ["SF", "NYG"], ["SF", "NYG"], ["SF", "NYG"], ["SF", "NYG"], ["SF", "NYG"], ] } ) print(df) 输出: teams 0 [SF, NYG] 1 [SF, NYG] 2 [SF, NYG] 3 [SF, NYG] 4 [SF, NYG] 5 [SF, NYG] …
136 python  pandas 

6
熊猫:如何将一列中的文本分成多行?
我正在处理一个较大的csv文件,并且最后一列的旁边是一串文本,我想用一个特定的分隔符来分割它。我想知道是否有使用pandas或python的简单方法? CustNum CustomerName ItemQty Item Seatblocks ItemExt 32363 McCartney, Paul 3 F04 2:218:10:4,6 60 31316 Lennon, John 25 F01 1:13:36:1,12 1:13:37:1,13 300 我想先按空格(' ')再(':')在Seatblocks列中按冒号分开,但每个单元格将导致列数不同。我具有重新排列列的功能,因此Seatblocks列位于工作表的末尾,但是我不确定从那里开始如何做。我可以使用内置text-to-columns函数和快速宏在excel中完成此操作,但是我的数据集记录太多,无法处理excel。 最终,我想记录约翰·列侬的记录并创建多行,并将每组座位的信息放在单独的行上。
135 python  pandas  dataframe 

8
熊猫唯一值多列
df = pd.DataFrame({'Col1': ['Bob', 'Joe', 'Bill', 'Mary', 'Joe'], 'Col2': ['Joe', 'Steve', 'Bob', 'Bob', 'Steve'], 'Col3': np.random.random(5)}) 返回“ Col1”和“ Col2”的唯一值的最佳方法是什么? 所需的输出是 'Bob', 'Joe', 'Bill', 'Mary', 'Steve'

9
ImportError:没有名为dateutil.parser的模块
我在导入时收到以下错误pandas的Python程序 monas-mbp:book mona$ sudo pip install python-dateutil Requirement already satisfied (use --upgrade to upgrade): python-dateutil in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python Cleaning up... monas-mbp:book mona$ python t1.py No module named dateutil.parser Traceback (most recent call last): File "t1.py", line 4, in <module> import pandas as pd File "/Library/Python/2.7/site-packages/pandas/__init__.py", line 6, in <module> from . …
134 python  pandas  pip 

3
熊猫:索引数据框时出现多种情况-意外行为
我正在按两列中的值过滤数据框中的行。 出于某种原因,OR运算符的行为类似于我期望AND运算符的行为,反之亦然。 我的测试代码: import pandas as pd df = pd.DataFrame({'a': range(5), 'b': range(5) }) # let's insert some -1 values df['a'][1] = -1 df['b'][1] = -1 df['a'][3] = -1 df['b'][4] = -1 df1 = df[(df.a != -1) & (df.b != -1)] df2 = df[(df.a != -1) | (df.b != -1)] …

4
Python Pandas:逐行填充数据框
向pandas.DataFrame对象添加一行的简单任务似乎很难完成。有3个与此相关的stackoverflow问题,没有一个给出有效的答案。 这就是我想要做的。我有一个DataFrame,我已经知道它的形状以及行和列的名称。 >>> df = pandas.DataFrame(columns=['a','b','c','d'], index=['x','y','z']) >>> df a b c d x NaN NaN NaN NaN y NaN NaN NaN NaN z NaN NaN NaN NaN 现在,我有一个函数来迭代计算行的值。如何用字典或a填充行之一pandas.Series?这是各种失败的尝试: >>> y = {'a':1, 'b':5, 'c':2, 'd':3} >>> df['y'] = y AssertionError: Length of values does not match length of index …
133 python  dataframe  row  pandas 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.