草庐IT

sample_dataframe

全部标签

用于存储对象的 Python DataFrame 或列表

我可以在pandas/numpySeries-DataFrame/ndarray中“存储”类的实例吗就像我在列表中所做的那样?或者这些库支持内置类型(数字、字符串)。例如,我有Point和x,y坐标,我想将Points存储在Plane中,这将返回具有给定坐标的Point。#myclassclassMyPoint:def__init__(self,x,y):self.x=xself.y=y@propertydefx(self):returnself.x@propertydefy(self):returnself.y这里我创建实例:first_point=MyClass(1,1)secon

python - 将 Pandas DataFrame 切片为新的 DataFrame

我想用bool索引对DataFrame进行切片以获得副本,然后独立于原始DataFrame在该副本上执行操作。由此看来answer,使用bool数组选择.loc将返回给我一个副本,但是,如果我尝试更改副本,SettingWithCopyWarning会妨碍。这是否是正确的方法:importnumpyasnpimportpandasaspdd1=pd.DataFrame(np.random.randn(10,5),columns=['a','b','c','d','e'])#createanewdataframefromtheslicedcopyd2=pd.DataFrame(d1.lo

Python pandas dataframe - 任何以编程方式设置频率的方法?

我正在尝试像这样处理CSV文件:df=pd.read_csv("raw_hl.csv",index_col='time',parse_dates=True))df.head(2)highlowtime2014-01-0117:00:001.3762351.3759452014-01-0117:01:001.3760051.3757752014-01-0117:02:001.3757951.3754452014-01-0117:07:00NaNNaN...2014-01-0117:49:001.3756451.375445type(df.index)pandas.tseries.inde

python - 如何从 DataFrame 的命名列级别中选择值的子集?

假设我们有一个包含多级列标题的DataFrame。level_0ABClevel_1PPPlevel_2xyxyxy0-1.0271550.6674890.314387-0.4286071.277167-1.32877110.223407-1.7134100.480903-3.517518-1.4127560.718804我想从命名级别中选择列列表。required_columns=['A','B']required_level='level_0'方法1:(已弃用,推荐使用df.loc)printdf.select(lambdax:x[0]inrequired_columns,axis

python - 如何使用增量值向 Pyspark 中的 DataFrame 添加一列?

我有一个名为“df”的DataFrame,如下所示:+-------+-------+-------+|Atr1|Atr2|Atr3|+-------+-------+-------+|A|A|A|+-------+-------+-------+|B|A|A|+-------+-------+-------+|C|A|A|+-------+-------+-------+我想用增量值向它添加一个新列并获取以下更新的DataFrame:+-------+-------+-------+-------+|Atr1|Atr2|Atr3|Atr4|+-------+-------+-----

python - DataFrame 列中的混合类型元素

考虑以下三个DataFrame:df1=pd.DataFrame([[1,2],[4,3]])df2=pd.DataFrame([[1,.2],[4,3]])df3=pd.DataFrame([[1,'a'],[4,3]])下面是DataFrame的第二列的类型:In[56]:map(type,df1[1])Out[56]:[numpy.int64,numpy.int64]In[57]:map(type,df2[1])Out[57]:[numpy.float64,numpy.float64]In[58]:map(type,df3[1])Out[58]:[str,int]在第一种情况下,

python - 在 Pandas Dataframe 中回收

当用R中较短数组的值填充数组时,R将“回收”较短数组中的元素。例如,将长度为7的数组[,,,,,,]设置为数组['a','b','c']将给出['a','b','c','a','b','c','a']。是否有内置方法使用类似的回收方式填充pandas列(或numpy数组)? 最佳答案 与numpy.resize-In[199]:a=['a','b','c']In[200]:np.resize(a,7)Out[200]:array(['a','b','c','a','b','c','a'],dtype='|S1')

python - 如何使用 Pandas 将 Series 连接到 DataFrame 上?

如果我有一个DataFrame:students=pd.DataFrame([['Alex'],['Lauren'],])如何连接一个Series并创建一个新的DataFrame?例如,我想:>>>marks=pd.Series([.8,.75])>>>students.concat(marks).values[['Alex',.8],['Lauren',.75]]我知道我可以使用:students['marks']=marks但这会改变students。我试过:>>>pd.concat([students,marks])…AttributeError:'Series'objectha

python - 将 pandas MultiIndex DataFrame 从按行转换为按列

我在zipline和pandas工作,并使用to_frame()方法将pandas.Panel转换为pandas.DataFrame.这是生成的pandas.DataFrame,如您所见,它是多索引的:pricemajorminor2008-01-0300:00:00+00:00SPY129.93KO26.38PEP64.782008-01-0400:00:00+00:00SPY126.74KO26.43PEP64.592008-01-0700:00:00+00:00SPY126.63KO27.05PEP66.102008-01-0800:00:00+00:00SPY124.59KO2

python - Pandas 函数 : DataFrame. apply() 运行顶行两次

这个问题在这里已经有了答案:Whydoespandasapplycalculatetwice(3个答案)关闭2年前。我有两个版本的函数使用PandasforPython2.7逐行通过inputs.csv。第一个版本在单列上使用Series.apply(),并按预期遍历每一行。第二个版本在多列上使用了DataFrame.apply(),并且出于某种原因它读取了顶行两次。然后它继续执行其余的行而不重复。知道为什么后者会读取顶行两次吗?版本#1–Series.apply()(读取顶行一次)importpandasaspddf=pd.read_csv(inputs.csv,delimiter=