我有一个元组列表,我想转换为系列.
return array2
[(0, 0.07142857142857142),
(0, 0.07142857142857142),
(1, 0.08333333333333333),
(1, 0.3333333333333333),
(1, 0.3333333333333333),
(1, 0.08333333333333333),
(3, 0.058823529411764705),
(3, 0.058823529411764705)]
Run Code Online (Sandbox Code Playgroud)
我尝试通过将列表转换为字典然后转换为系列来完成此操作:
a = pd.Series(dict(array2))
Run Code Online (Sandbox Code Playgroud)
然而,最终的系列并不像我需要的那样表现.它似乎掉落key:value(可能是任意的?)
例如
return a
0 0.071429
1 0.083333
3 0.058824
Run Code Online (Sandbox Code Playgroud)
如何在不丢弃任何键值对的情况下获得系列?
这个答案建议使用 plt.savefig 来增加 DPI。我是一个相对的新手,不知道如何使用 .savefig。
savefig 的调用签名需要 fname 来引用需要更多 DPI 的文件(或对象?):
在下面的代码中,我应该为 fname 使用什么?我应该创建一个对象然后引用它吗?
#previous code generates two dataframes now converted to two lists...
Max_Vals = DFMAX1.tolist()
Min_Vals = DFMIN1.tolist()
fig = plt.figure()
plt.plot(Max_Vals, 'g-')
plt.plot(Min_Vals, 'b-')
fig.set_size_inches(30.,18.)
plt.show()
Run Code Online (Sandbox Code Playgroud)
当我在没有 fname 的情况下运行 savefig 时:
plt.savefig(dpi=300)
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
感谢任何帮助。
在pandas.DataFrame.filter中,有一种方法可以使用参数“like”或“regex”,以便它们支持 OR 条件。例如:
df.filter(like='bbi', axis=1)
Run Code Online (Sandbox Code Playgroud)
将过滤名称中包含的列bbi,但是如何过滤包含'bbi'OR的列'abc'?
一些失败的选项:
df.filter(like='bbi' or 'abc', axis=1)
df.filter(like=('bbi' or 'abc'), axis=1)
Run Code Online (Sandbox Code Playgroud) 我有一个带有 y 轴的图表,它表示一年中某些日子的温度。我想将摄氏度放入 y 标签上的实际刻度中。这是我到目前为止使用的代码及其下方的图表。
plt.ylabel('°C',fontsize = 30)
plt.yticks(np.arange(miny,maxy, step=20))
plt.tick_params(labelsize=20)
Run Code Online (Sandbox Code Playgroud)
以前的答案侧重于 unicode 问题,但我发现 matplotlib 可以将 °C 表示法作为字符串的一部分。我的问题是如何将其放入 y 轴上的刻度中。
有没有办法用tick_params来做到这一点?
感谢您的任何建议。
我有一个包含 200,000 行的剪辑列表,每行的形式为
<field 1> <field2>
Run Code Online (Sandbox Code Playgroud)
为了只获取字段 1,我可以运行如下所示的脚本
import os
import sys
jump = open(sys.argv[1],"r")
clips = open("clips.list","w")
text = jump.readlines()
list_of_clips = str()
for line in text:
clip_to_add = line.split(" ")[0]
list_of_clips = list_of_clips + clip_to_add +'\n'
with open ('clips.list', 'w') as file:
file.write (list_of_clips)
jump.close()
Run Code Online (Sandbox Code Playgroud)
或者我可以使用awk 'print{($1)}'
为什么 awk 这么快?它在大约 1 秒内完成工作。