假设我有以下结构:
\n\n dir_1\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 functions.py\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 dir_2\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 code.ipynb\nRun Code Online (Sandbox Code Playgroud)\n\n在,,code.ipynb我只是想访问里面的一个函数functions.py并尝试了这个:
from ..functions import some_function\nRun Code Online (Sandbox Code Playgroud)\n\n我收到错误:
\n\nattempted relative import with no known parent package\nRun Code Online (Sandbox Code Playgroud)\n\n我已经检查了一堆类似的帖子,但还没有弄清楚这一点...我正在从 a 运行 jupyter 笔记本,conda env我的 python 版本是3.7.6.
想象一下,我有一个dash应用程序,我希望在页面重新加载时刷新全局数据。我正在使用一个函数来提供此处所述的布局。但是,我注意到应该如何/在哪里定义df,以便可以在回调中使用它(就像我想根据df某些输入对它进行子集化并将其传递到布局表的情况)。我下面的代码在页面刷新时重新加载数据,但回调无法访问df.
我很陌生,dash所以提前为可能愚蠢的问题道歉。
def serve_layout():
df = # Fetch data from DB
return # Layout
app.layout = serve_layout
@app.callback()
def my_func:
# Here I want to reference df
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 matplotlib 绘制以下数据框:
df = pd.DataFrame({'X': ["A", "A", "B", "B"], 'Z': ["a", "b", "a", "b"], 'Y': [5, 1, 10, 5]})
df
X Z Y
0 A a 5
1 A b 1
2 B a 10
3 B b 5
Run Code Online (Sandbox Code Playgroud)
我想要的是两个条形图,其中条形图彼此相邻而不是彼此重叠。当我运行这个时,条形图被放置在彼此的顶部:
plt.barh(df['X'][df['Z'] == "a"], df['Y'][df['Z'] == "a"], color = 'blue')
plt.barh(df['X'][df['Z'] == "b"], df['Y'][df['Z'] == "b"], color = 'red')
Run Code Online (Sandbox Code Playgroud)
当我尝试更改条形的位置时,出现错误:can only concatenate str (not "float") to str。我该如何解决这个问题?
假设我有df和d以下。我想,对于 中的每一行col,检查是否与 中的项目键匹配,如果匹配d,则将值替换col为相应的项目值,否则删除该行。(不能超过一场比赛)。
df = pd.DataFrame({'col': ['sdffzdhellojkh', 'fegky', 'ouewfzdworldqf']})
d = {'fzdhello': 'hello', 'fzdworld': 'world'}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,输出将如下所示:
df
col
0 hello
1 world
Run Code Online (Sandbox Code Playgroud) 我有一个L未命名的逗号分隔字符列表。每个字符列表的长度不等。我需要删除少于 4 个元素的字符列表L。如何才能做到这一点?示例L:
> L
[[1]]
[1] "A" "B" "C" "D"
[[2]]
[1] "E" "F" "G"
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我想最终得到:
> L
[[1]]
[1] "A" "B" "C" "D"
Run Code Online (Sandbox Code Playgroud) 我有一个数据框,其中包含一个日期和一个 ID 列。以下是仅用于此问题的示例框架。但真实数据包括更多的行和列。
from datetime import date, timedelta
import pandas as pd
date = datetime.datetime(2020, 1, 1)
delta_1 = 5
delta_2 = 15
delta_3 = 18
data = {
'A': [date, date - timedelta(delta_1), date - timedelta(delta_2), date, date - timedelta(delta_3)],
'B': ['a', 'a', 'a', 'b', 'b']
}
df = pd.DataFrame(data)
print(df)
A B
0 2020-01-01 a
1 2019-12-27 a
2 2019-12-17 a
3 2020-01-01 b
4 2019-12-14 b
Run Code Online (Sandbox Code Playgroud)
我想要实现的是,对于每个唯一 id(B示例中的列),从最近的行开始,并根据日期条件删除行:如果在 10 天内插入具有现有 id 的行具有该 ID 的最近行,只有最新行有效。所以在这个例子中,以 10 …
假设我有df以下内容:
df = pd.DataFrame({
'ID': ['a', 'b', 'b', 'c', 'c', 'c', 'd', 'd', 'd', 'd'],
'V': np.array(range(0,10))
})
Run Code Online (Sandbox Code Playgroud)
我想要groupby变量ID并将值分配给新列,X具体取决于(1)每个组的大小以及每行是否是顶部(T)、“中间”(更像是顶部和底部之间)(M)或底部(B)排。如果一组中只有一行,则分配的值为N。在这种情况下,结果将如下所示:
ID V X
0 a 0 N
1 b 1 T
2 b 2 B
3 c 3 T
4 c 4 M
5 c 5 B
6 d 6 T
7 d 7 M
8 d 8 M
9 d 9 B
Run Code Online (Sandbox Code Playgroud)
我可以使用类似的方法(对于这种情况)逐步执行此操作T …
python ×6
pandas ×5
dataframe ×3
anaconda ×1
character ×1
conditional ×1
dictionary ×1
group-by ×1
lapply ×1
list ×1
match ×1
matplotlib ×1
plotly-dash ×1
r ×1