I have a dataframe that looks like below
ID DATE PROFIT
2342 2017-03-01 457
2342 2017-06-01 658
2342 2017-09-01 3456
2342 2017-12-01 345
2342 2018-03-01 235
2342 2018-06-01 23
808 2016-12-01 200
808 2017-03-01 9346
808 2017-06-01 54
808 2017-09-01 314
808 2017-12-01 57
....
....
Run Code Online (Sandbox Code Playgroud)
For each ID:
I want to find out if the Profit has stayed between 200 and 1000. I want to do it in such a way that a counter( a new column) indicates how …
我有一个系列(索引如下所示)显示为
E1 543
Units1_E 100
E2 553
Units2_E 420
E3 513
Units3_E 110
F1 243
Units1_F 500
F2 450
Units2_F 300
F3 400
Units3_F 200
Run Code Online (Sandbox Code Playgroud)
我正在将其转换为数据帧,以便输出为
E_F Units
543 100
553 420
513 110
243 500
450 300
400 200
Run Code Online (Sandbox Code Playgroud)
因此,所需的输出更像是一对值列。。不确定是否可以高效地完成此操作,是否考虑使用正则表达式过滤序列索引?
我有一个excelsheet在同一张纸上有多个表。这些表具有不同的列号和不同的行号。但是,好消息是表标题具有背景色,并且表内容具有白色背景。
我想知道是否可以使用xlrd或其他软件包将这些表中的每个数据读为单独的数据帧。
目前正在考虑的方法相当冗长,可能并不理想。
例如 :
import xlrd
book = xlrd.open_workbook("some.xls", formatting_info=True)
sheets = book.sheet_names()
for index, sh in enumerate(sheets):
sheet = book.sheet_by_index(index)
rows, cols = sheet.nrows, sheet.ncols
for row in range(rows):
for col in range(cols):
xfx = sheet.cell_xf_index(row, col)
xf = book.xf_list[xfx]
bgx = xf.background.pattern_colour_index
if bgx != 64:
Header_row = rownum
Run Code Online (Sandbox Code Playgroud)
然后遍历此Header_row并获取所有列值,并将它们作为数据框列名。然后继续解析第一列的行,直到遇到空白单元格或只有一个或两个非空单元格的行。
如您所见,这变得很冗长,可能不是最佳方法。
我想读取DataFrame 列表的每第 n 行,并通过附加所有第 N 行来创建一个新的 DataFrame。
假设我们有以下 DataFrame:
>>> df1
A B C D
0 -0.8 -2.8 -0.3 -0.1
1 -0.1 -0.9 0.2 -0.7
2 0.7 -3.3 -1.1 -0.4
>>> df2
A B C D
0 1.4 -0.7 1.5 -1.3
1 1.6 1.4 1.4 0.2
2 -1.4 0.2 -1.7 0.7
>>> df3
A B C D
0 0.3 -0.5 -1.6 -0.8
1 0.2 -0.5 -1.1 1.6
2 -0.3 0.7 -1.0 1.0
Run Code Online (Sandbox Code Playgroud)
我使用以下方法来获得所需的 df:
df = pd.DataFrame()
df_list = …Run Code Online (Sandbox Code Playgroud) 我在一个文本板中有一组线条.
例如:
643 ABCF aksdjgk 1q25hgn
239056 dsgkn 32968, 39859 ewktgklh, 35927369
9689846 dklsghdkls 23-608 dsklgnk
ewth834056 sidtguoi,235907 sdkgji,25689-8, 29067490,wtyuoew
Run Code Online (Sandbox Code Playgroud)
如何使用python读取它并将文本拆分为换行符和,(逗号)上的不同列表值?
例如,示例文本的输出应为
643 ABCF aksdjgk 1q25hgn
239056 dsgkn 32968,
39859 ewktgklh,
35927369
9689846 dklsghdkls 23-608 dsklgnk
ewth834056 sidtguoi,
235907 sdkgji,
25689-8,
29067490,
wtyuoew
Run Code Online (Sandbox Code Playgroud) 我在Stack Overflow上提到了一些与此相关的帖子.但是我并没有真正找到一种非常有说服力的方法.
我将如何使用函数返回True或False,具体取决于单词(输入到函数)是否包含0或1(或更多)星.
我试过这样的事情:
def ANY_CHAR_IS_star(word):
return bool(re.match(r"^[*]?", word))
Run Code Online (Sandbox Code Playgroud)
然而,对于错误情况,这也是正确的.不知道哪里出错了.诚实地说正则表达式有点弱