我有以下 df:
table:
A B C D
0 0.000000 0.000000 -0.002520 -0.002520
1 0.209772 0.016262 0.003411 0.024343
2 -0.006474 -0.000152 0.000152 0.000000
Run Code Online (Sandbox Code Playgroud)
真正的 df 大约有 12 列和 40 行。
我想改变它的格式:
我面临的问题是如何将格式应用于某些列,并将不同的格式应用于其他列。通常我习惯于将格式应用于整个 dfs 而不是单独应用于列。
所需的输出将是这样的:
table:
A B C D
0 0.00% 0.000% -0.000% -0.00%
1 0.20% 0.067% 0.001% 0.43%
2 -0.00% -0.000% 0.015% 0.00%
Run Code Online (Sandbox Code Playgroud)
正如您在所需的输出列中所看到的,A 和 D 被四舍五入为 2 个有效数字,B 和 C 被四舍五入为 3 个有效数字,并将 % 添加到所有这些数字中
这是我尝试过但没有奏效的方法:
format_AD = "{0:.2f}%".format
format_BC= "{0:.3f}%".format
format_changeAD=[table.loc[:,['A','D']]]
format_changeBC=[table.loc[:,['B','C']]]
format_changeAD.apply(format_AD)
format_changeBC.apply(format_BC)
return table
Run Code Online (Sandbox Code Playgroud) 我期待摆脱列表中每个元素后面的空格:
list1 = ['Aena', 'Cellnex Telecom', 'Amadeus', 'Abertis']
Run Code Online (Sandbox Code Playgroud)
为了获得这样的列表:
list1 = ['Aena','Cellnex Telecom','Amadeus','Abertis']
Run Code Online (Sandbox Code Playgroud)
我尝试了以下循环但返回相同的初始列表:
new_list = [stocks.replace(" ","") for stocks in list1]
Run Code Online (Sandbox Code Playgroud)
和
new_list = [stocks.replace(", '",",'") for stocks in list1]
print(new_list)
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我获得没有空格的所需列表吗?
我有以下df值是字典:
tests
SO4 {'Mon': 6, 'Tues': 6, 'Wed': 7}
CH3 {'Mon': 0, 'Tues': 8, 'Wed': 10}
Run Code Online (Sandbox Code Playgroud)
我想获得所需的输出:
0 1 2
SO4 'Mon': 6 'Tues': 6 'Wed': 7
CH3 'Mon': 0 'Tues': 8 'Wed': 10
Run Code Online (Sandbox Code Playgroud)
我怎么能把字典分成单独的列?
我已经看到使用rsplit函数拆分字符串的列,但不确定如何在字典作为值的情况下应用它。
我有以下字典:
dict_2 = {
'key1': {'subkey1': 2, 'subkey2': 7, 'subkey3': 5},
'key2': {'subkey1': None, 'subkey2': None, 'subkey3': None},
}
Run Code Online (Sandbox Code Playgroud)
我期待通过删除带有嵌套字典的整个键来清除 中dict_2的这些None值subkeys:
总之我的输出应该是:
dict_2={key1:{subkey1:2,subkey2:7,subkey3:5}}
Run Code Online (Sandbox Code Playgroud)
我试过的是:
glob_dict={}
for k,v in dict_2.items():
dictionary={k: dict_2[k] for k in dict_2 if not None (dict_2[k]
['subkey2'])}
if bool(glob_dict)==False:
glob_dict=dictionary
else:
glob_dict={**glob_dict,**dictionary}
print(glob_dict)
Run Code Online (Sandbox Code Playgroud)
我目前的输出是:
TypeError: 'NoneType' object is not callable
Run Code Online (Sandbox Code Playgroud)
我不确定循环是否是摆脱None嵌套循环值的最佳方式,我也不确定如何表达我想摆脱这些None值。
如何将numpy数组的双方括号删除为列表的单个方括号?
[[0, 3.49, 0, 4.55]]
Run Code Online (Sandbox Code Playgroud)
期望的输出
[0,3.49,0,4.55]
Run Code Online (Sandbox Code Playgroud)
我已经搜索过SO寻找numpy数组以列出,方括号numpy,无法找到答案
to_list() 仅在值之间添加逗号
我有以下内容date:
date=np.datetime64 (2019-12-15)
Run Code Online (Sandbox Code Playgroud)
然后我有一个 np.datetime64 日期列表:
['2018-01-01','2019-01-01','2019-04-12','2019-12-01']
Run Code Online (Sandbox Code Playgroud)
我想index从list最接近我的日期获得。
所需的输出是3日期列表中最接近我的日期的位置。
鉴于我不知道如何测试我的问题,我无法提供示例。
我只能想到一个assert.AlmostEqual,但我不确定如何将其反映在一个例子中。
所以我对创建容器还很陌生,我有一个简单的 Dockerfile,我想在其中每分钟运行一个简单的 python 脚本:
FROM python:3.8-buster
RUN apt-get update && apt-get install -y cron
COPY my_python /bin/my_python
COPY root /var/spool/cron/crontabs/root
RUN chmod +x /bin/my_python
CMD cron -l 2 -f
Run Code Online (Sandbox Code Playgroud)
其中我的_python:
print("hi world!!")
Run Code Online (Sandbox Code Playgroud)
和根:
* * * * * python3 /bin/my_python
Run Code Online (Sandbox Code Playgroud)
然后我只创建图像和容器:
docker image build -t python-test
docker container run -it --name python-test python-test
Run Code Online (Sandbox Code Playgroud)
我应该每分钟都会看到一个带有 hi world 的打印,但是当运行容器时(在图像构建之后)似乎没有出现日志。
我究竟做错了什么?
python ×4
pandas ×2
containers ×1
cron ×1
date ×1
dictionary ×1
docker ×1
dockerfile ×1
list ×1
nested ×1
numpy ×1