草庐IT

Pandas-Datareader

全部标签

python - 日志文件到 Pandas Dataframe

我有日志文件,其中有很多行的形式:LogLevel[13/10/201500:30:00.650][MessageText]我的目标是将日志文件中的每一行转换成一个漂亮的数据框。我已经厌倦了这样做,通过拆分[字符上的行,但是我仍然没有得到一个整洁的数据框。我的代码:level=[]time=[]text=[]withopen(filename)asinf:forlineininf:parts=line.split('[')iflen(parts)>1:level=parts[0]time=parts[1]text=parts[2]print(parts[0],parts[1],part

python - Pandas 海峡计数

考虑以下数据框。我想计算字符串中出现的“$”的数量。我在pandas(http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.str.count.html)中使用str.count函数。>>>importpandasaspd>>>df=pd.DataFrame(['$$a','$$b','$c'],columns=['A'])>>>df['A'].str.count('$')011121Name:A,dtype:int64我原以为结果是[2,2,1]。我究竟做错了什么?在Python中,string模块中的

python - 将 API 转换为 Pandas DataFrame

我想将API调用转换为pandasdataframe。此刻,API非常杂乱无章,我想合并pandas以使其更易于阅读/编辑/操作。我尝试了以下操作:r=requests.get('http://api.football-data.org/v1/competitions/398/teams')x=r.json()df=pd.read_json(x)printdf但收到:TypeError:ExpectedStringorUnicode 最佳答案 pd.read_json需要一个字符串。但是,r.json()返回一个字典对象。在您的情况

python - self 加入 Pandas

我想对Pandas数据框执行自连接,以便将某些行附加到原始行。每行都有一个标记“i”,指示应在右侧附加哪一行。d=pd.DataFrame(['A','B','C'],columns=['some_col'])d['i']=[2,1,1]In[17]:dOut[17]:some_coli0A21B12C1期望的输出:some_colisome_col_y0A2C1B1B2C1B也就是说,第2行附加到第0行,第1行附加到第1行,第1行附加到第2行(如i所示)。我的想法是pd.merge(d,d,left_index=True,right_on='i',how='left')但它会产生完全

python - 在 groupby pandas 之后过滤行

我在Pandas中有一张table:importpandasaspddf=pd.DataFrame({'LeafID':[1,1,2,1,3,3,1,6,3,5,1],'pidx':[10,10,300,10,30,40,20,10,30,45,20],'pidy':[20,20,400,20,15,20,12,43,54,112,23],'count':[10,20,30,40,80,10,20,50,30,10,70],'score':[10,10,10,22,22,3,4,5,9,0,1]})LeafIDcountpidxpidyscore01101020101120102010

python - 如何舍入/删除 pandas 列中的尾随 ".0"零?

我正在尝试查看是否可以从此电话号码列中删除尾随零。例子:018.00735e+0924.35789e+0936.10644e+09此列中的类型是一个对象,我试图将其四舍五入但出现错误。我检查了其中的几个,我知道它们的格式为“8007354384.0”,并希望用小数点去掉尾随零。有时我收到这种格式,有时我不收到,它们将是整数。我想检查电话列是否有尾随零,然后将其删除。我有这段代码,但我对如何检查每一行的尾随零感到困惑。data.ix[data.phone.str.contains('.0'),'phone']我收到一个错误=>***ValueError:cannotindexwithve

python - 将字符串/文本和 pandas 数据框写入 excel

我想将一些文本和数据框保存到这样的excel文件中:因此,我得到了以下变量:text1="sometexthere"text2="othertexthere"df=pd.DataFrame({"a":[1,2,3,4,5],"b":[6,7,8,9,10],"c":[11,12,13,14,15]})我发现可以使用xlsxwriter来执行此操作,这意味着我基本上必须遍历整个数据帧以将每个条目写入excel工作簿中的不同单元格。这很麻烦。所以,我认为必须有更简单的方法来做到这一点;像这样:writer=pd.ExcelWriter("test.xlsx",engine="xlsxwri

python - 检查列表中的单词并删除 pandas dataframe 列中的那些单词

我有一个列表如下,remove_words=['abc','deff','pls']以下是我拥有的列名称为“string”的数据框data['string']0abcstackoverflow1abc1232deffcomedy3definitely4plslkjh5pls1234我想检查pandasdataframe列中remove_words列表中的单词,并删除pandasdataframe中的这些单词。我想检查单独出现的单词而不与其他单词一起出现。例如,如果pandasdf列中有'abc',请将其替换为'',但如果它出现在abc123中,我们需要保持原样。这里的输出应该是,dat

python - Pandas 可以按行执行 min() 和 max() 函数吗?

在我的DataFrame中,我希望将特定列的值剪裁在0到100之间。例如,给定以下内容:ab01090120150230-30我想得到:abc0109090120150100230-300我知道在Pandas中,某些算术运算是跨列进行的。例如,我可以像这样将b列中的每个数字加倍:>>>df["c"]=df["b"]*2>>>dfabc01090180120150300230-30-60然而,这不适用于内置函数,如min和max:>>>df["c"]=min(100,max(0,df["b"]))ValueError:ThetruthvalueofaSeriesisambiguous.U

python - 如何将 Pandas 查找表应用于 numpy 数组?

我有一个像这样的Pandas系列:measure00.360.690.2110.3140.0170.1230.9和一个像这样的numpy数组:array([[0,0,9,11],[6,14,6,17]])我如何从numpy数组中的值到系列中的索引进行查找以获取此信息:array([[0.3,0.3,0.2,0.3],[0.6,0.0,0.6,0.1]]) 最佳答案 通过np.vectorize,使用系列s和数组a:np.vectorize(s.get)(a) 关于python-如何将Pa