这似乎相当明显,但我似乎无法弄清楚如何将数据框的索引转换为列?
例如:
df=
gi ptt_loc
0 384444683 593
1 384444684 594
2 384444686 596
Run Code Online (Sandbox Code Playgroud)
至,
df=
index1 gi ptt_loc
0 0 384444683 593
1 1 384444684 594
2 2 384444686 596
Run Code Online (Sandbox Code Playgroud) 我知道有很多棉短绒编程语言,如pep8对python,但我从来没有碰到过一个了makefile.是否有任何这样的短信makefile?
随着我逐渐使用a makefile,它会变得越来越复杂和冗长,对我而言,使用linter来保持makefile更具可读性是有意义的.
我有一个R代码my_code.R,它接受一个参数文件test.txt.我可以用:
Rscript -e my_code.R test.txt
Run Code Online (Sandbox Code Playgroud)
并运行脚本,但我想使用knitR中的stitch()生成pdf/tex中的脚本报告.
我已经控制了堆栈溢出并使用了以下建议,但没有得到任何结果:
Rscript -e "library(knitr);knit('my_code.R "-args arg1=test.txt" ')"
Rscript -e "knitr::stitch('my_code.R "-args arg1=test.txt"')"
Run Code Online (Sandbox Code Playgroud)
这是关于我想要什么(链接)的另一个类似的讨论,但有添加参数的选项.
我有一个以下格式的元组:
(639283, 298290710, 1385)
(639283, 298290712, 1389)
(639283, 298290715, 1395)
(745310, 470212995, 2061)
(745310, 470213821, 3713)
(745310, 470215360, 6791)
(745310, 470215361, 6793)
(745310, 470215363, 6797)
(911045, 374330803, 4905)
(911045, 374330804, 4907)
(911045, 374330807, 4913)
(911045, 374330808, 4915)
(911045, 374330809, 4917)
Run Code Online (Sandbox Code Playgroud)
我想转换成这样的嵌套字典:
{639283:{298290710:1385, 298290712:1389, 298290715:1395},745310:{470212995:2061,470213821:3713}............}
Run Code Online (Sandbox Code Playgroud)
有这样做的pythonic方式吗?看起来很简单,但我似乎无法弄清楚这一点.
我有两个dataframes df1并df2从同一个源进行了计算的是,但具有不同的方法,从而大部分值是相同的,具有一定的差异.现在,我想df1根据中的值进行更新df2.
例如:
df1 = pd.DataFrame({'name':['john','deb','john','deb'], 'col1':[490,500,425,678], 'col2':[456,625,578,789],'col3':['TN','OK','OK','NY']})
name col1 col2 col3
john 490 456 TN
deb 500 625 OK
john 425 578 OK
deb 678 789 NY
df2 = pd.DataFrame({'name':['deb','john','deb','john','deb'], 'col1':[400,490,500,425,678], 'col2':[225,456,625,578,789],'col3':['TN','TN','OK','OK','NY']})
name col1 col2 col3
deb 400 225 TN
john 490 456 TN
deb 500 625 OK
john 425 578 OK
deb 678 789 NY
Run Code Online (Sandbox Code Playgroud)
所以,在这种情况下,.append应该追加仅第一行df2来df1.所以,只有当一个新行df2不存在df1(基于名称和col3)时才会添加/更新该列,否则它不会.
这几乎concat应该是应该做的事情.
我有一个列表如下:
[(220921998, 2426),
(220921999, 2427),
(220922000, 2428),
(220922001, 2429),
(220922563, 2991),
(220922564, 2992),
(220922565, 2993),
(220922566, 2994),
(220922575, 3003),
(220923958, 4386),
(220924161, 4589),
(220924170, 4598),
(220924171, 4599),
(220924172, 4600),
(220924173, 4601),
(220924912, 5340),
(220926340, 6768),
(220926341, 6769),
(220926342, 6770),
(220926343, 6771),
(220926344, 6772),
(220927052, 7480),
(220927053, 7481),
(220927054, 7482),
(220927055, 7483),
(220927056, 7484),
(220927069, 7497),
(220927071, 7499)]
Run Code Online (Sandbox Code Playgroud)
我想根据第二个数字在列表中添加一个字符串.如果列表中的第二个数字在其他第二个数字的20左右之内,则会为它们分配相同的"项目"名称.见下文:
[(220921998, 2426,project1),
(220921999, 2427,project1),
(220922000, 2428,project1),
(220922001, 2429,project1),
(220922563, 2991,project2),
(220922564, 2992,project2),
(220922565, 2993,project2),
(220922566, 2994,project2),
(220922575, 3003,project3),
(220923958, 4386,project4),
(220924161, 4589,project5), …Run Code Online (Sandbox Code Playgroud) 我有 N 个相同长度的列表。如何在相应位置比较这些列表并输出它们都匹配的位置数?
例如:
A=[1,0,1,1]
B=[1,1,1,1]
C=[1,0,1,0]
Run Code Online (Sandbox Code Playgroud)
这三个列表的比较将输出2为仅位置 1 和 3 匹配。
我正在考虑将其转换为元组然后压缩它K=zip(A,B,C),然后添加每个元组以查看它是否与列表的数量匹配。
这个问题听起来好像我遗漏了一些相当微不足道的东西,也许吧!